5.4.2.2. ワークロードでのプルシークレットの使用


プルシークレットを使用すると、ワークロードが次のいずれかの方法でプライベートレジストリーからイメージをプルできるようになります。

  • シークレットを ServiceAccount にリンクする。これにより、そのサービスアカウントを使用するすべての Pod にシークレットが自動的に適用されます。
  • ワークロード設定で imagePullSecrets を直接定義する。これは GitOps や ArgoCD などの環境に役立ちます。

手順

  • サービスアカウントにシークレットを追加することで、Pod のイメージをプルするためのシークレットを使用できます。サービスアカウントの名前は、Pod が使用するサービスアカウントの名前と一致する必要があることに注意してください。デフォルトのサービスアカウントは default です。

    • 次のコマンドを入力してプルシークレットを ServiceAccount にリンクします。

      $ oc secrets link default <pull_secret_name> --for=pull
    • 変更を確認するために、次のコマンドを入力します。

      $ oc get serviceaccount default -o yaml

      出力例

      apiVersion: v1
      imagePullSecrets:
      - name: default-dockercfg-123456
      - name: <pull_secret_name>
      kind: ServiceAccount
      metadata:
        annotations:
          openshift.io/internal-registry-pull-secret-ref: <internal_registry_pull_secret>
        creationTimestamp: "2025-03-03T20:07:52Z"
        name: default
        namespace: default
        resourceVersion: "13914"
        uid: 9f62dd88-110d-4879-9e27-1ffe269poe3
      secrets:
      - name: <pull_secret_name>

  • シークレットをサービスアカウントにリンクする代わりに、Pod またはワークロード定義で直接参照することもできます。これは ArgoCD などの GitOps ワークフローに役立ちます。以下に例を示します。

    Pod 仕様の例

    apiVersion: v1
    kind: Pod
    metadata:
      name: <secure_pod_name>
    spec:
      containers:
      - name: <container_name>
        image: quay.io/my-private-image
      imagePullSecrets:
      - name: <pull_secret_name>

    ArgoCD ワークフローの例

    apiVersion: argoproj.io/v1alpha1
    kind: Workflow
    metadata:
      generateName: <example_workflow>
    spec:
      entrypoint: <main_task>
      imagePullSecrets:
      - name: <pull_secret_name>

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る