第4章 レジストリーへのアクセス
ログおよびメトリクスの表示やレジストリーのセキュリティー保護および公開などの、レジストリーへのアクセスについての各種の方法について、以下のセクションを参照してください。
レジストリーに直接アクセスし、podman
コマンドを起動することが可能です。これにより、podman push
や podman pull
などの操作で統合レジストリーへ/からイメージを直接プッシュまたはプルすることができます。これを実行するには、oc login
コマンドを使ってレジストリーにログインしている必要があります。実行できる操作は、以下のセクションで説明されているようにユーザーが持つパーミッションによって異なります。
前提条件
- アイデンティティープロバイダー (IDP) を設定しておく必要があります。
podman pull
コマンドを使用する場合などにイメージをプルするには、ユーザーにregistry-viewer
ロールがなければなりません。このロールを追加するには、以下を実行します。$ oc policy add-role-to-user registry-viewer <user_name>
イメージの書き出しやプッシュを実行するには (
podman push
コマンドを使用する場合など)、ユーザーにregistry-editor
ロールが必要です。このロールを追加するには、以下を実行します。$ oc policy add-role-to-user registry-editor <user_name>
4.1. クラスターからレジストリーへの直接アクセス
クラスター内からレジストリーにアクセスすることができます。
手順
内部ルートを使用して、クラスターからレジストリーにアクセスします。
ノードのアドレスを取得することにより、ノードにアクセスします。
$ oc get nodes $ oc debug nodes/<node_address>
アクセストークンを使用してコンテナーイメージレジストリーにログインします。
$ oc login -u kubeadmin -p <password_from_install_log> $ podman login -u kubeadmin -p $(oc whoami -t) image-registry.openshift-image-registry.svc:5000
以下のようなログインを確認するメッセージが表示されるはずです。
Login Succeeded!
注記ユーザー名には任意の値を指定でき、トークンには必要な情報がすべて含まれます。コロンが含まれるユーザー名を指定すると、ログインに失敗します。
イメージレジストリー Operator はルートを作成するため、
default-route-openshift-image-registry.<cluster_name>
のようになります。レジストリーに対して
podman pull
およびpodman push
操作を実行します。重要任意のイメージをプルできますが、system:registry ロールを追加している場合は、各自のプロジェクトにあるレジストリーにのみイメージをプッシュすることができます。
次の例では、以下を使用します。
Component 値 <registry_ip>
172.30.124.220
<port>
5000
<project>
openshift
<image>
image
<tag>
省略 (デフォルトは
latest
)任意のイメージをプルします。
$ podman pull name.io/image
新規イメージに
<registry_ip>:<port>/<project>/<image>
形式でタグ付けします。プロジェクト名は、イメージを正しくレジストリーに配置し、これに後でアクセスできるようにするために OpenShift Container Platform のプル仕様に表示される必要があります。$ podman tag name.io/image image-registry.openshift-image-registry.svc:5000/openshift/image
注記指定されたプロジェクトについて
system:image-builder
ロールを持っている必要があります。このロールにより、ユーザーはイメージの書き出しやプッシュを実行できます。このロールが設定されていない場合には次の手順のpodman push
が失敗します。 新規プロジェクトを作成し、イメージをプッシュしてテストできます。新しくタグ付けされたイメージをレジストリーにプッシュします。
$ podman push image-registry.openshift-image-registry.svc:5000/openshift/image