页面主题
一般性问题
全部打开Amazon Elastic Container Registry(ECR)是一种完全托管的 Docker 容器注册表,开发人员可使用它轻松存储、管理和部署 Docker 容器映像。Amazon ECR 与 Amazon Elastic Container Service(ECS)集成,从而简化了生产工作流的开发。Amazon ECR 使您无需操作自己的容器存储库,也不必为扩展底层基础设施而担心。Amazon ECR 将您的镜像存储在高度可用且可扩展的架构中,使您能够为应用程序可靠部署容器。与 Amazon Identity and Access Management(IAM)集成,使您可以对每个存储库进行资源级别的控制。
Amazon ECR 使您无需操作和扩展增强容器注册表功能所需的基础设施。Amazon ECR 使用 Amazon S3 进行存储,可确保您的容器镜像高度可用且可访问,使您可以为您的应用程序可靠地部署新容器。Amazon ECR 通过 HTTPS 传输您的容器镜像,然后自动对镜像进行静态加密。您可以通过配置策略来管理每个存储库的权限并限制对 IAM 用户、角色或其他亚马逊云科技账户的访问。Amazon ECR 集成了 Amazon ECS 和 Docker CLI,使您能够简化开发和生产工作流。您可以使用 Docker CLI 将容器镜像从您的开发计算机轻松推送到 Amazon ECR,Amazon ECS 随后可以直接将其取回用于生产部署。
Amazon ECR 无需预付费。您只需为存储库中存储的数据量以及传输到 Internet 的数据付费。
Amazon ECR 是一项区域性服务,旨在帮助您灵活部署镜像。您可以将镜像推送或提取至 Docker 群集所在的区域,以便获得最佳性能。您也可以在 Docker 运行的任何位置(例如桌面和本地环境)访问 Amazon ECR。在不同区域间提取镜像或将镜像提取至 Internet 将造成额外的延迟并产生数据传输费用。
Amazon ECR 目前支持私有镜像。不过,通过使用基于 IAM 资源的权限,您可以为每个存储库配置策略,以支持对 IAM 用户、角色或其他亚马逊云科技账户的访问。
您可以使用 Amazon ECR 上的 Amazon CloudTrail 提供包含所有 API 操作的历史记录,例如,哪位用户提取了镜像以及何时在镜像间移动了标签。管理员还可以了解哪些 EC2 实例提取了哪些镜像。
使用 Amazon ECR
全部打开
开始使用 Amazon ECR 的最佳方式是使用 Docker CLI 来推送和提取您的首个镜像。请查看我们的文档以便了解更多信息。
Amazon ECR 提供了命令行界面和 API,用于创建、监控和删除存储库并设置存储库权限。您可以在 Amazon ECR 管理控制台中执行相同的操作,该控制台可通过 Amazon ECS 控制台的“存储库”部分进行访问。Amazon ECR 还集成了 Docker CLI,可支持您在开发计算机上推送和提取镜像并为镜像添加标签。
可以。Amazon ECR 旨在帮助您将镜像灵活地存储在所需的位置,并灵活地部署镜像。您可以创建部署管道来构建镜像,将它们推送至某个区域的 Amazon ECR,然后 Amazon ECR 可以自动将这些镜像复制到其他区域和账户,以部署至多区域群集。
可以。您可以在 Docker 运行的任何位置(例如桌面和本地环境)访问 Amazon ECR。
可以。Amazon ECR 提供 Amazon Linux 容器镜像,详细步骤可参见论坛内容。客户可以用这些容器镜像在其基于 Linux 的 Docker 环境中运行工作负载。容器镜像带有极少的软件包,能够安装全套 Amazon Linux AMI 软件包。与 EC2 中的 Amazon Linux AMI 类似,Amazon Linux 容器镜像会从 Amazon 获得安全更新、滚动发布和软件包更新形式的持续更新。
可以。Amazon ECR 与 Amazon ECS 集成,让您能够轻松地存储、运行和管理在 Amazon ECS 上运行的应用程序的容器映像。您需要做的只是在您的任务定义中指定 Amazon ECR 存储库,然后 Amazon ECS 将为您的应用程序检索相应的映像。
可以。Amazon Elastic Beanstalk 支持适用于单容器和多容器 Docker 环境的 Amazon ECR,让您能够使用 Amazon Elastic Beanstalk 轻松部署存储在 Amazon ECR 中的容器镜像。为此,您只需在您的 Dockerrun.aws.json 配置中指定 Amazon ECR 存储库,并将 AmazonEC2ContainerRegistryReadOnly 策略挂载到您的容器实例角色。
Amazon ECR 目前支持 Docker Engine 1.7.0 及更高版本。
Amazon ECR 支持 Docker Registry V2 API 规范。
但是,Amazon ECR 可与多种常用 CI/CD 解决方案集成,以提供此功能。有关更多信息,请参阅亚马逊云科技合作伙伴页面。
可以。Amazon ECR 与 Amazon Identity and Access Management 集成,可支持联合身份验证,实现对亚马逊云科技管理控制台或 Amazon API 的授权访问。
Amazon ECR 支持 Docker Image Manifest V2(Schema 2 格式)。为保持与 Schema 1 镜像的向后兼容性,Amazon ECR 将继续接受以 Schema 1 格式上传的镜像。此外,当使用较低版本(1.9 及更低版本)的 Docker Engine 提取镜像时,Amazon ECR 可以执行向下转换,即将 Schema 2 镜像转换为 Schema 1 镜像。
可以。Amazon ECR 可支持 Open Container Initiative (OCI) 镜像,让您能够推送和提取 OCI 镜像。提取镜像时,Amazon ECR 还可以在 Docker Image Manifest V2 (Schema 2) 镜像与 OCI 镜像之间进行转换。
安全性
全部打开
Amazon ECR 自动对静态映像进行加密,并通过 HTTPS 传输容器映像。您可以使用 Amazon Identity and Access Management(IAM)用户和角色配置策略,以管理权限并控制对镜像的访问,而无需直接在 EC2 实例上管理凭证。
您可以使用基于 IAM 资源的策略来控制和监控哪些主体(例如 EC2 实例)可以访问您的容器镜像,以及它们的访问时间、地点和方式。首先,使用管理控制台为您的存储库创建基于资源的策略。或者,您也可以使用示例策略,并通过 Amazon ECR CLI 将策略挂载至存储库。
可以,以下是一个创建和设置跨账户镜像共享策略的示例。