3.2. 内部レジストリーのシークレットの設定
制限された docker レジストリーを設定し、すべてのイメージをプッシュした後、内部レジストリーと通信できるように、制限された OpenShift サーバーを設定する必要があります。
手順
管理者として OpenShift クラスターにログインします。
oc login --user system:admin --token=my-token --server=https://my-cluster.example.com:6443
Fuse をデプロイするプロジェクトを開きます。
oc project myproject
Red Hat Customer Portal アカウントを使用して
docker-registry
シークレットを作成し、PULL_SECRET_NAME
をpsi-internal-registry
に置き換えて以下を作成します。oc create secret docker-registry psi-internal-registry \ --docker-server=docker-registry.redhat.io \ --docker-username=CUSTOMER_PORTAL_USERNAME \ --docker-password=CUSTOMER_PORTAL_PASSWORD \ --docker-email=EMAIL_ADDRESS
以下の出力が表示されるはずです。
secret/psi-internal-registry created
重要この
docker-registry
シークレットを、registry.redhat.io
に対して認証されるすべての OpenShift プロジェクト namespace に作成する必要があります。シークレットをサービスアカウントにリンクして、シークレットをイメージをプルするために使用します。次の例では、
default
サービスアカウント、builder
サービスアカウント、およびdeployer
サービスアカウントを使用しています。oc secrets link default psi-internal-registry oc secrets link default psi-internal-registry --for=pull oc secrets link builder psi-internal-registry oc secrets link builder psi-internal-registry --for=pull oc secrets link deployer psi-internal-registry oc secrets link deployer psi-internal-registry --for=pull
サービスアカウント名は、OpenShift Pod が使用する名前と一致する必要があります。
注記Red Hat のユーザー名とパスワードを使用してプルシークレットを作成したくない場合は、レジストリーサービスアカウントを使用して認証トークンを作成できます。