Amazon ECR のアイコン

Amazon ECR 热门2015年〜

安全存储、管理和分发 Docker 容器镜像的全托管注册表

它能做什么

Amazon ECR (Elastic Container Registry) 是用于存储、管理和部署 Docker 容器镜像的全托管容器注册表服务。标准提供镜像加密、访问控制和漏洞扫描,与 ECSEKSLambda 等 AWS 服务无缝集成。基于高可用和高耐久的存储基础设施,可高速处理镜像的推送和拉取。

使用场景

适用于 CI/CD 流水线中容器镜像的构建和存储、ECSEKS 应用部署镜像管理、多区域镜像复制、容器镜像漏洞扫描和安全管理、团队间基础镜像共享和标准化等容器镜像生命周期管理的各个方面。

日常类比

可以将其比作图书馆的书库。将书籍 (容器镜像) 整理保管,需要时随时取出。书库有锁 (访问控制),只有授权人员才能存取书籍。此外还会定期检查书籍状态 (漏洞),发现损坏的书会及时通知。

什么是 ECR

Amazon Elastic Container Registry (ECR) 是 AWS 提供的全托管 Docker 容器注册表。与 Docker Hub 等公共注册表不同,它专注于私有镜像管理。镜像存储在 Amazon S3 上,保证高耐久性和可用性。通过与 IAM 集成的细粒度访问控制,可以严格管理谁能访问哪些镜像。

主要特性

ECR 的特点是安全性和运维自动化。存储的镜像通过 AWS KMS 加密保护。镜像扫描功能可在推送时或定期自动检测容器镜像漏洞。设置生命周期策略可自动删除旧镜像和未使用镜像,优化存储成本。跨区域复制可将镜像自动复制到多个区域,加速全球部署。

私有与公有

ECR 有私有注册表和公有注册表两种。私有注册表仅 IAM 认证用户可访问,适合企业应用镜像管理。公有注册表 (ECR Public) 任何人都可拉取镜像,用于开源项目和共享库的分发。ECR Public Gallery 可搜索和使用 AWS 提供的官方镜像及社区公开镜像。 有关私有与公有的最新动态和实践方法,也可参阅 Amazon 上的相关书籍

定价体系

ECR 的定价基于存储的镜像数据量和数据传输量。私有注册表存储为每 GB 每月 0.10 美元。同区域内 ECSEKS 的镜像拉取免费,跨区域传输收取数据传输费。公有注册表为匿名用户提供每月 500 GB 免费传输,AWS 账户认证用户则无限制。通过生命周期策略自动删除不需要的镜像可有效控制存储成本。

入门指南

要开始使用 ECR,通过 AWS 管理控制台或 AWS CLI 创建仓库。仓库是存储镜像的逻辑单元,通常按应用程序创建。在本地构建 Docker 镜像后,使用 aws ecr get-login-password 命令获取认证令牌,然后用 docker push 命令推送镜像。在 ECS 任务定义或 EKS Pod 定义中指定 ECR 镜像 URI,部署时会自动拉取镜像。

注意事项

  • Without lifecycle policies, old images accumulate and increase storage costs. Always configure auto-deletion rules for unnecessary images
  • Enable image scanning and establish operational rules to prevent deploying images with detected vulnerabilities to production
共有するXB!