ジョブのプライベートレジストリの認証 - AWS Batch

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ジョブのプライベートレジストリの認証

AWS Secrets Manager を使用したジョブのプライベートレジストリ認証では、認証情報を安全に保存し、タスク定義で参照できます。これにより、AWS の外部にありジョブ定義で認証を必要とするプライベートレジストリに存在するコンテナイメージを参照できます。この機能は、Amazon EC2 インスタンスと Fargate でホストされるジョブに対応しています。

重要

ジョブ定義で Amazon ECR に保存されたイメージを参照している場合、このトピックは適用されません。詳細については、Amazon Elastic Container Registry ユーザーガイドの「Amazon ECS で Amazon ECR イメージを使用する」を参照してください。

Amazon EC2 インスタンスでホストされるジョブの場合は、この機能のためにコンテナエージェントのバージョン 1.19.0 以降が必要です。ただし、最新のコンテナエージェントのバージョンを使用することをお勧めします。エージェントのバージョンの確認と最新バージョンへの更新の方法の詳細については、「Amazon Elastic Container Service 開発者ガイド」の「Amazon ECS コンテナエージェントをアップデートする」を参照してください。

Fargate でホストされているジョブの場合、この機能にはプラットフォームバージョン 1.2.0 以降が必要です。詳細については、「Amazon Elastic Container Service 開発者ガイド」の「AWS Amazon ECS 向け Fargate プラットフォームバージョン」を参照してください。

コンテナの定義内で、作成したシークレットの詳細 で repositoryCredentials オブジェクトを指定します。参照するシークレットは、ジョブが使用するものと異なる AWS リージョン、または異なるアカウントに置くことができます。

注記

AWS Batch API、AWS CLI、または AWS SDK を使用しており、起動するジョブと同じ AWS リージョン にシークレットが存在する場合は、シークレットの完全な ARN または名前のどちらも使用できます。シークレットが別のアカウントに存在する場合は、シークレットの完全な ARN を指定する必要があります。AWS Management Console を使用する場合は、シークレットの完全な ARN を常に指定する必要があります。

必要なパラメータが含まれるジョブ定義のスニペットを以下に示します。

"containerProperties": [ { "image": "private-repo/private-image", "repositoryCredentials": { "credentialsParameter": "arn:aws:secretsmanager:region:123456789012:secret:secret_name" } } ]