我想允许一个二级账户连接到我的 Amazon Elastic 容器注册表 (Amazon ECR) 映像存储库,以推送或拉取映像。我如何进行配置?

要向另一个账户中的 ECR 存储库推送映像或从中拉取映像,您必须创建一个允许二级账户对该存储库执行这些 API 调用的策略。在 Amazon Elastic 容器服务 (Amazon ECS) 控制台中,您可在存储库的权限选项卡中设置此策略。在为存储库配置权限并获取令牌后,您可以基于允许的操作来推送或拉取映像。获得令牌的用户还需要相关 API 权限才能修改存储库。

要启用二级账户以在 ECR 存储库中推送或拉取映像,您必须向授予二级账户执行这些操作的权限。

  1. Amazon ECS 控制台的左侧导航窗格中,选择 Repositories
  2. 选择要修改的存储库的名称。
  3. Permissions 选项卡中,选择 Add
  4. 填写权限的细节(如二级账户的账号和该账户可对存储库执行的操作),然后选择 Save (保存)。有关示例,请参阅示例:允许其他账户。二级账户在拥有所需的临时(12 小时)身份验证令牌后,可对存储库执行这些操作。在 Amazon ECS 外部推送和拉取映像时,可使用以下 get-login 命令为该账户获取 Docker 身份验证令牌:
$aws ecr get-login --registry-ids <account_ID_of_repository> --region <region>

使用该令牌可使用常规的 Docker 推送和拉取命令。在使用 Amazon ECS 从存储库拉取映像时,请在任务定义中设置映像。注意:无论哪种情况,执行令牌获取操作的账户均需要在存储库账户中进行必要 API 调用的权限。有关示例,请参阅 Amazon ECR 托管策略。有关问题排查的更多信息,请打开 Docker 调试;参阅启用 Docker 调试输出


此页面对您有帮助吗? |

返回 AWS Support 知识中心

需要帮助?请访问 AWS 支持中心

发布时间:2016 年 8 月 4 日

更新时间:2018 年 7 月 23 日