5.4. イメージプルシークレットの使用


コンテナーレジストリーで認証を行い、OpenShift Container Platform プロジェクト全体またはセキュリティー保護されたレジストリーからイメージをプルするには、イメージプルシークレットを設定して使用できます。

まず、レジストリー認証情報を取得します。これは通常、Docker の場合は ~/.docker/config.json ファイル、Podman の場合は ~/.config/containers/auth.json ファイルにあり、Red Hat OpenShift Cluster Manager プロセスからシークレットをプルすること で作成されます。このコンテンツは、クラスター内のグローバルな pullSecret オブジェクトを作成または更新するために使用され、quay.io および registry.redhat.io からのイメージへのアクセスを可能にします。

注記

OpenShift イメージレジストリーを使用しており、同じプロジェクト内にあるイメージストリームからイメージを取得している場合、Pod サービスアカウントにはすでに適切な権限が付与されているはずです。追加の措置は必要ありません。

5.4.1. Pod が複数のプロジェクト間でイメージを参照できるようにする設定

ある OpenShift Container Platform プロジェクト内の Pod が別のプロジェクトのイメージを参照できるようにするには、対象プロジェクトの system:image-puller ロールにサービスアカウントをバインドします。プロジェクト間でイメージへのアクセス権を付与するには 、oc policy add-role-to-user コマンドまたは oc policy add-role-to-group コマンドを使用します。

注記

Pod サービスアカウントまたは名前空間を作成する際は、サービスアカウントに Docker プルシークレットがプロビジョニングされるまでお待ちください。サービスアカウントが完全にプロビジョニングされる前に Pod を作成すると、Pod は OpenShift イメージレジストリーにアクセスできなくなります。

手順

  1. 以下のコマンドを入力することで、プロジェクト a の Pod が プロジェクト b のイメージを参照できるようにします。この例では、プロジェクト a のサービスアカウントの デフォルトがプロジェクト bsystem:image-puller ロールにバインドされています。

    $ oc policy add-role-to-user \
        system:image-puller system:serviceaccount:project-a:default \
        --namespace=project-b
  2. オプション: add-role-to-group フラグを使用して、プロジェクト a 内の任意のサービスアカウントにアクセスを許可します。以下に例を示します。

    $ oc policy add-role-to-group \
        system:image-puller system:serviceaccounts:project-a \
        --namespace=project-b
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る