本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
將 Amazon ECR 映像與 Amazon ECS 搭配使用
您可以使用 Amazon ECR 私有儲存庫,來託管 Amazon ECS 任務可能從中提取的容器映像和成品。若要使用此功能,Amazon ECS 或 Fargate、容器代理程式必須具有進行 ecr:BatchGetImage、ecr:GetDownloadUrlForLayer 和 ecr:GetAuthorizationToken API 的許可。
所需的 IAM 許可
下表顯示了要針對每個啟動類型使用的 IAM 角色,這些角色為您的任務提供從 Amazon ECR 私有儲存庫提取所需的許可。Amazon ECS 提供受管 IAM 政策,其中包含必要許可。
| 啟動類型 | IAM role (IAM 角色) | AWS 受管 IAM 政策 |
|---|---|---|
| Amazon EC2 執行個體上的 Amazon ECS |
使用容器執行個體 IAM 角色,此角色與 Amazon ECS 叢集中註冊的 Amazon EC2 執行個體相關聯。如需詳細資訊,請參閱《Amazon Elastic Container Service 開發人員指南》中的容器執行個體 IAM 角色。 |
如需詳細資訊,請參閱《Amazon Elastic Container Service 開發人員指南》中的 AmazonEC2ContainerServiceforEC2Role。 |
|
Fargate 上的 Amazon ECS |
使用您在 Amazon ECS 任務定義中參照的任務執行 IAM 角色。如需詳細資訊,請參閱《Amazon Elastic Container Service 開發人員指南》中的任務執行 IAM 角色。 |
如需詳細資訊,請參閱《Amazon Elastic Container Service 開發人員指南》中的 AmazonECSTaskExecutionRolePolicy。 |
|
外部執行個體上的 Amazon ECS |
使用容器執行個體 IAM 角色,此角色與 Amazon ECS 叢集中註冊的內部部署伺服器或虛擬機器 (VM) 相關聯。如需詳細資訊,請參閱《Amazon Elastic Container Service 開發人員指南》中的容器執行個體 Amazon ECS 角色。 |
如需詳細資訊,請參閱《Amazon Elastic Container Service 開發人員指南》中的 AmazonEC2ContainerServiceforEC2Role。 |
重要
AWS 受管 IAM 政策包含您使用時可能不需要的其他許可。在此情況下,這些是從 Amazon ECR 私有儲存庫提取的最低必要許可。
在 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