容器镜像清单格式 - Amazon ECR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

容器镜像清单格式

Amazon ECR 支持以下容器镜像清单格式:

  • Docker Image Manifest V2 Schema 1 (与 Docker 版本 1.9 和更早版本配合使用)

  • Docker Image Manifest V2 Schema 2 (与 Docker 版本 1.10 和更新版本配合使用)

  • Open Container Initiative (OCI) 规范 (v1.0 和更高版本)

对 Docker Image Manifest V2 Schema 2 的支持可提供以下功能:

  • 能够为单个镜像使用多个标签。

  • 支持存储 Windows 容器镜像。有关更多信息,请参阅 Amazon Elastic Container Service 开发人员指南中的将 Windows镜像推送到 Amazon ECR

Amazon ECR 镜像清单转换

在 Amazon ECR 中推送和提取镜像时,您的容器引擎客户端 (例如 Docker) 将与注册表进行通信以就客户端了解的清单格式以及要用于镜像的注册表达成一致。

在使用 Docker 版本 1.9 或更旧版本将镜像推送到 Amazon ECR 时,镜像清单格式将存储为 Docker Image Manifest V2 Schema 1。在使用 Docker 版本 1.10 或更新版本将镜像推送到 Amazon ECR 时,镜像清单格式将存储为 Docker Image Manifest V2 Schema 2。

在从 Amazon ECR 按标签提取镜像时,Amazon ECR 将返回存储在存储库中的镜像清单格式。仅当客户端理解该格式时,才会将其返回。如果客户端不理解所存储的镜像清单格式,则 Amazon ECR 会将镜像清单转换为客户端能够理解的格式。例如,如果 Docker 1.9 客户端请求的镜像清单存储格式为 Docker Image Manifest V2 Schema 2,那么 Amazon ECR 将以 Docker Image Manifest V2 Schema 1 格式返回该清单。下表介绍了按标签提取镜像时 Amazon ECR 支持的可用转换:

客户端请求的架构 作为 V2 Schema 1 推送到 ECR 作为 V2 Schema 2 推送到 ECR 作为 OCI 推送到 ECR
V2 Schema 1 无需转换 已转换为 V2 Schema 1 已转换为 V2 Schema 1
V2 Schema 2 无可用转换,客户端将回退到 V2 Schema 1 无需转换 已转换为 V2 Schema 2
OCI 无可用转换 已转换为 OCI 无需转换
重要

如果按摘要提取镜像,则没有可用的转换。您的客户端必须了解存储在 Amazon ECR 中的镜像清单格式。如果您在 Docker 1.9 或更旧版本的客户端上按摘要请求 Docker Image Manifest V2 Schema 2 镜像,则无法提取镜像。有关更多信息,请参阅 Docker 文档中的注册表兼容性

在此示例中,如果按标签请求同一镜像,Amazon ECR 会将镜像清单转换为客户端能够理解的格式。镜像提取成功。