This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.2.2. ミラーレジストリーの作成
OpenShift Container Platform のインストールに必要なミラーリングされたコンテンツをホストするためにレジストリーを作成します。
以下の手順では、/opt/registry フォルダーにデータを保存し、podman コンテナーで実行される単純なレジストリーを作成します。Red Hat Quay などの異なるレジストリーソリューションを使用できます。以下の手順で、レジストリーが正常に機能することを確認します。
前提条件
- レジストリーホストとして使用する Red Hat Enterprise Linux (RHEL) サーバーがネットワーク上にある。
- レジストリーホストはインターネットにアクセスできる。
手順
必要なパッケージをインストールします。
yum -y install podman httpd-tools
# yum -y install podman httpd-toolsCopy to Clipboard Copied! Toggle word wrap Toggle overflow podmanパッケージは、レジストリーを実行する際に使用するコンテナーパッケージを提供します。httpd-toolsパッケージは、ユーザーの作成に使用するhtpasswdユーティリティーを提供します。レジストリーのフォルダーを作成します。
mkdir -p /opt/registry/{auth,certs,data}# mkdir -p /opt/registry/{auth,certs,data}Copy to Clipboard Copied! Toggle word wrap Toggle overflow これらのフォルダーはレジストリーコンテナー内にマウントされます。
レジストリーの証明書を指定します。既存の信頼される認証局がない場合は、自己署名の証明書を生成することができます。
cd /opt/registry/certs openssl req -newkey rsa:4096 -nodes -sha256 -keyout domain.key -x509 -days 365 -out domain.crt
$ cd /opt/registry/certs # openssl req -newkey rsa:4096 -nodes -sha256 -keyout domain.key -x509 -days 365 -out domain.crtCopy to Clipboard Copied! Toggle word wrap Toggle overflow プロンプト時に、証明書に必要な値を指定します。
国名 (2 文字コード)
場所として 2 文字の ISO 国コードを指定します。ISO 3166 国名コード 標準を参照してください。
State or Province Name (正式名)
都道府県名の正式名を入力します。
Locality Name (例: 市)
市の名前を入力します。
Organization Name (例: 会社)
会社名を入力します。
Organizational Unit Name (例: セクション)
部門名を入力します。
Common Name (例: 本人の名前またはサーバーのホスト名)
レジストリーホストのホスト名を入力します。ホスト名が DNS にあり、予想される IP アドレスに解決されていることを確認します。
Email Address
メールアドレスを入力します。詳細は、OpenSSL ドキュメントの req の説明を参照してください。
bcrpt形式を使用するレジストリー用のユーザー名およびパスワードを生成します。htpasswd -bBc /opt/registry/auth/htpasswd <user_name> <password>
# htpasswd -bBc /opt/registry/auth/htpasswd <user_name> <password>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<user_name>および<password>をユーザー名およびパスワードに置き換えます。
レジストリーをホストする
mirror-registryコンテナーを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<local_registry_host_port>については、ミラーレジストリーがコンテンツの送信に使用するポートを指定します。
レジストリーに必要なポートを開きます。
firewall-cmd --add-port=<local_registry_host_port>/tcp --zone=internal --permanent firewall-cmd --add-port=<local_registry_host_port>/tcp --zone=public --permanent firewall-cmd --reload
# firewall-cmd --add-port=<local_registry_host_port>/tcp --zone=internal --permanent1 # firewall-cmd --add-port=<local_registry_host_port>/tcp --zone=public --permanent2 # firewall-cmd --reloadCopy to Clipboard Copied! Toggle word wrap Toggle overflow 信頼された証明書の一覧に自己署名証明書を追加します。
cp /opt/registry/certs/domain.crt /etc/pki/ca-trust/source/anchors/ update-ca-trust
# cp /opt/registry/certs/domain.crt /etc/pki/ca-trust/source/anchors/ # update-ca-trustCopy to Clipboard Copied! Toggle word wrap Toggle overflow ミラープロセス中にレジストリーにログインするには、証明書を信頼する必要があります。
レジストリーが使用できることを確認します。
curl -u <user_name>:<password> -k https://<local_registry_host_name>:<local_registry_host_port>/v2/_catalog {"repositories":[]}$ curl -u <user_name>:<password> -k https://<local_registry_host_name>:<local_registry_host_port>/v2/_catalog1 {"repositories":[]}Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<user_name>および<password>については、レジストリーにユーザー名とパスワードを指定します。<local_registry_host_name>については、registry.example.comなどのように、証明書に指定したレジストリードメイン名を指定します。<local_registry_host_port>については、ミラーレジストリーがコンテンツの送信に使用するポートを指定します。
コマンドの出力に空のリポジトリーが表示される場合、レジストリーは利用可能な状態です。