28.3. Composer 用リポジトリーミラーの準備

技術上の理由から、Composer は直接 Red Hat コンテンツ配信ネットワーク (CDN) を使用することができません。以下の手順では、Composer 実行用とは別のシステムに、これらのコンテンツのミラーを準備する方法について説明します。

前提条件

  • /var/www ディレクトリーが配置されたファイルシステムには、少なくとも 50 GiB の空き容量がなければなりません。これを確認するには、以下のコマンドを実行します。
    $ df -h /var/www/
  • システムは、Composer を使用するシステムと同じバージョンの Red Hat Enterprise Linux を使用していなければなりません。また、必要なすべてのサブスクリプションがアタッチされている必要があります。

手順

  1. パッケージおよびリポジトリーならびに Apache Web サーバーを扱うためのツールをインストールします。
    # yum install yum-utils createrepo httpd
  2. このマシンで有効なリポジトリーの一覧を表示し、その識別 ID を書き留めます。
    # yum repolist
  3. Composer で使用するリポジトリーのローカルミラーを作成します。それぞれのリポジトリーについて、以下のコマンドを実行します。
    # mkdir -p /var/www/html
    # reposync --gpgcheck -l --download_path=/var/www/html --repoid REPO-ID --downloadcomps --download-metadata
    $ cd /var/www/html/REPO-ID
    $ createrepo -v /var/www/html/REPO-ID -g comps.xml
    REPO-ID を、前のステップで書き留めた識別 ID に置き換えてください。
  4. httpd Apache Web サーバーがリポジトリーのミラーにアクセスできるように、リポジトリーに正しい SELinux コンテキストを設定します。
    # chcon -vR -t httpd_sys_content_t /var/www/html/
  5. 再起動のたびに起動するように Web サーバーを有効にし、システムのファイアウォールを設定し、サーバーの初期起動を行います。
    # systemctl enable httpd
    # firewall-cmd --add-service=http --permanent
    # firewall-cmd --add-service=http
    # systemctl start httpd