用于控制在缓存拉取或复制操作期间创建的存储库的模板 - 亚马逊 ECR

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

用于控制在缓存拉取或复制操作期间创建的存储库的模板

使用亚马逊ECR存储库创建模板为亚马逊ECR代表您创建的存储库定义设置。存储库创建模板中的设置仅在存储库创建期间应用,对现有存储库或使用任何其他方法创建的存储库没有任何影响。目前,存储库创建模板可用于在存储库创建期间为以下功能应用设置:

  • 读取缓存

  • 复制

以下区域不支持存储库创建模板:

  • 中国(北京) (cn-north-1)

  • 中国(宁夏) (cn-northwest-1)

  • AWS GovCloud (美国东部)(us-gov-east-1)

  • AWS GovCloud (美国西部)(us-gov-west-1)

存储库创建模板的工作原理

有时,Amazon ECR 需要代表您创建新的私有存储库。例如:

  • 首次使用拉取缓存规则检索上游存储库的内容并将其存储在您的 Amazon ECR 私有注册表中。

  • 当您希望 Amazon 将存储库复制ECR到其他地区或账户时。

当没有与您的直通缓存规则或复制的存储库匹配的存储库创建模板时,Amazon 将ECR使用新存储库的默认设置。这些默认设置包括关闭标签不变性、使用 AES-256 加密,以及不应用任何存储库或生命周期策略。

使用存储库创建模板可以定义 Amazon ECR 应用于通过拉取缓存和复制操作创建的新存储库的设置。您可以为新存储库定义标签不变性、加密配置、存储库权限、生命周期策略和资源标签。

下图显示了将存储库创建模板与拉取缓存操作配合ECR使用时 Amazon 使用的工作流程。

显示如何将存储库创建模板应用于新存储库。

以下内容详细描述了存储库创建模板中的每个参数。

Prefix

Prefix 是与模板关联的存储库命名空间前缀。使用此前缀创建的所有存储库都将应用此模板中定义的设置。例如,前缀 prod 将应用于以 prod/ 开头的所有存储库。同理,前缀 prod/team 将应用于以 prod/team/ 开头的所有存储库。在包含两个模板的注册表中,如果一个模板的前缀为 “prod”,另一个模板的前缀为 “prod/team”,则带有 “prod/team” 前缀的模板将应用于名称以 “prod/team/” 开头的所有存储库。

要将某模板应用于注册表中没有关联创建模板的所有存储库,您可以使用 ROOT 作为前缀。

重要

前缀末尾始终应用假定的 /。如果您指定ecr-public为前缀,Amazon ECR 会将其视为ecr-public/。使用缓存提取规则时,您在创建规则时指定的存储库前缀也应指定为存储库创建模板前缀。

描述

模板描述是可选的,用于描述存储库创建模板的用途。

已申请对象

应用的设置决定了将使用此模板ECR创建哪些已创建的存储库。有效值为 PULL_THROUGH_CACHEREPLICATION。例如,您首次使用拉取缓存规则检索上游存储库的内容并将其存储在您的 Amazon ECR 私有注册表中。如果没有与您的直通缓存规则相匹配的存储库创建模板,Amazon 将ECR使用新存储库的默认设置。

存储库创建角色

存储库创建角色是 Amazon IAM 在ARN通过存储库创建模板创建和配置存储库ECR时将担任的角色。使用存储库标签和/或KMS模板时必须提供此角色,否则仓库创建将失败。

镜像标签可变性

使用模板创建的存储库要使用的标签可变性设置。如果省略此参数,则MUTABLE将使用默认设置,这将允许覆盖图像标签。对于通过缓存提取操作创建的存储库所使用的模板,建议使用此设置。这样ECR可以确保当标签相同时,Amazon 可以更新缓存的图片。

如果指定,IMMUTABLE则存储库中的所有图像标签都将是不可变的,这将防止它们被覆盖。

加密配置

使用模板创建的存储库要使用的加密配置

如果您使用KMS加密类型,则存储库的内容将使用服务器端加密进行加密, AWS Key Management Service 密钥存储在中 AWS KMS。当您使用 AWS KMS 加密数据时,您可以使用亚马逊的默认 AWS 托管 AWS KMS 密钥ECR,也可以指定您已经创建的自己的 AWS KMS 密钥。有关更多信息,请参阅《Amazon 简单存储服务用户指南》中的使用服务器端加密和存储在 AWS Key Management Service (SSE-KMS) 中的 AWS Key Management Service 密钥保护数据。如果您使用KMS加密类型并将其用于跨区域复制,则可能需要额外的权限。有关更多信息,请参阅创建用于复制的KMS密钥策略

如果您使用AES256加密类型,Amazon 将ECR使用服务器端加密和 Amazon S3 托管的加密密钥,使用-256 加密算法对存储库中的图像进行加密。AES有关更多信息,请参阅《亚马逊简单存储服务用户指南》中的使用 Amazon S3 托管加密密钥 (SSE-S3) 使用服务器端加密保护数据

存储库权限

使用模板创建的存储库要应用的存储库策略。存储库策略使用基于资源的权限来控制对存储库的访问权限。基于资源的权限允许您指定哪些IAM用户或角色有权访问存储库以及他们可以对存储库执行哪些操作。默认情况下,只有创建仓库的 AWS 账户才有权访问仓库。您可以应用策略文档来授予或拒绝对存储库的其他权限。有关更多信息,请参阅

存储库生命周期策略

使用模板创建的存储库要使用的生命周期策略。生命周期策略提供了对私有存储库中映像的生命周期管理的更多控制。生命周期策略包含一条或多条规则,其中每条规则都定义了 Amazon 的操作ECR。这提供了一种自动清理容器镜像的方法,例如根据使用期限或计数过期的镜像。有关更多信息,请参阅 在 Amazon ECR 中使用生命周期策略自动清理图像

资源标签

资源标签是应用于存储库的元数据,旨在帮助您对其进行分类和整理。每个标签都包含定义的一个密钥和一个可选值。如果您使用具有跨区域复制功能的存储库创建模板,则需要将此权限应用于目标注册表策略。