将 Amazon ECR 映像与 Amazon ECS 结合使用 - Amazon ECR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将 Amazon ECR 映像与 Amazon ECS 结合使用

您可以使用 Amazon ECR 私有存储库来托管容器镜像和构件,您的 Amazon ECS 任务可能会从中提取这些镜像和构件。为此,Amazon ECS 或 Fargate 容器代理必须有进行 ecr:BatchGetImageecr:GetDownloadUrlForLayerecr:GetAuthorizationToken API 调用的权限。

所需的 IAM 权限

下表显示了每种启动类型要使用的 IAM 角色,该角色为您的任务从 Amazon ECR 私有存储库提取提供了所需的权限。Amazon ECS 提供包括所需权限的托管 IAM 策略。

启动类型 IAM 角色 Amazon 托管 IAM policy
Amazon EC2 实例上的 Amazon ECS

使用容器实例 IAM 角色,该角色与注册到 Amazon ECS 集群的 Amazon EC2 实例相关联。有关更多信息,请参阅 Amazon Elastic Container Service 开发人员指南中的容器实例 IAM 角色

AmazonEC2ContainerServiceforEC2Role

有关更多信息,请参阅 Amazon Elastic Container Service 开发人员指南中的 AmazonEC2ContainerServiceforEC2Role

Fargate 上的 Amazon ECS

使用您在 Amazon ECS 任务定义中引用的任务执行 IAM 角色。有关更多信息,请参阅 Amazon Elastic Container Service 开发人员指南中的任务执行 IAM 角色

AmazonECSTaskExecutionRolePolicy

有关更多信息,请参阅 Amazon Elastic Container Service 开发人员指南中的 AmazonECSTaskExecutionRolePolicy

外部实例上的 Amazon ECS

使用容器实例 IAM 角色,该角色与注册到 Amazon ECS 集群的本地服务器或虚拟机(VM)相关联。有关更多信息,请参阅 Amazon Elastic Container Service 开发人员指南中的容器实例 Amazon ECS 角色

AmazonEC2ContainerServiceforEC2Role

有关更多信息,请参阅 Amazon Elastic Container Service 开发人员指南中的 AmazonEC2ContainerServiceforEC2Role

重要

Amazon 托管 IAM policy 包含您可能不需要使用的额外权限。在这种情况下,这些是从 Amazon ECR 私有存储库提取所需的最低权限。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer", "ecr:GetAuthorizationToken" ], "Resource": "*" } ] }

在 Amazon ECS 任务定义中指定 Amazon ECR 镜像

创建 Amazon ECS 任务定义时,您可以指定在 Amazon ECR 私有存储库中托管的容器镜像。在任务定义中,确保对您的 Amazon ECR 镜像使用完整的 registry/repository:tag 命名。例如:aws_account_id.dkr.ecr.region.amazonaws.com/my-repository:latest

以下任务定义代码段显示了用于指定在 Amazon ECS 任务定义中的 Amazon ECR 中托管的容器映像的语法。

{ "family": "task-definition-name", ... "containerDefinitions": [ { "name": "container-name", "image": "aws_account_id.dkr.ecr.region.amazonaws.com/my-repository:latest", ... } ], ... }