本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
作业的私有注册表身份验证
使用对作业进行私有注册表身份验证 AWS Secrets Manager 使您能够安全地存储凭证,然后在作业定义中引用这些凭证。这提供了一种引用私有注册表中存在的容器镜像的方法 AWS ,这些镜像需要在任务定义中进行身份验证。托管在 Amazon EC2 实例和 Fargate 上的作业支持此功能。
重要
如果您的作业定义引用了存储在 Amazon ECR 中的映像,则此主题不适用。有关更多信息,请参阅 Amazon Elastic Container Registry 用户指南中的使用 Amazon ECR 和 Amazon ECS。
对于托管在 Amazon EC2 实例上的任务,此功能需要容器代理版本1.19.0
或更高版本。但是,我们建议使用最新的容器代理版本。有关如何检查您的代理版本和更新到最新版本的信息,请参阅《Amazon Elastic Container Service 开发人员指南》中的 更新 Amazon ECS 容器代理。
对于 Fargate 上托管的作业,此功能需要平台版本 1.2.0
或更高版本。有关信息,请参阅《Amazon Elastic Container Service 开发人员指南》中的 AWS Fargate Linux 平台版本。
在容器定义中,使用您创建的密钥的详细信息指定 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
" } } ]