本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
用于控制在缓存提取或复制操作期间创建的存储库的模板
使用 Amazon ECR 存储库创建模板,定义 Amazon ECR 代表您创建的存储库的设置。存储库创建模板中的设置仅在存储库创建期间应用,对现有存储库或使用任何其他方法创建的存储库没有任何影响。目前,存储库创建模板可用于在存储库创建过程中为以下功能应用设置:
-
缓存提取
-
复制
以下区域不支持存储库创建模板:
-
中国(北京) (
cn-north-1
) -
中国(宁夏) (
cn-northwest-1
) -
AmazonGovCloud (US-East)
us-gov-east-1
-
AmazonGovCloud (US-West)
us-gov-west-1
存储库创建模板的工作原理
有时,Amazon ECR 需要代表您创建新的私有存储库。例如:
-
您首次使用缓存提取规则来检索上游存储库的内容并将其存储于 Amazon ECR 私有注册表时。
-
当您想要 Amazon ECR 将存储库复制到另一个区域或账户时。
当没有与您的缓存提取规则或复制的存储库匹配的存储库创建模板时,Amazon ECR 会为新存储库使用默认设置。这些默认设置包括关闭标签不变性、使用 AES-256
加密,以及不应用任何存储库或生命周期策略。
使用存储库创建模板,您可以定义 Amazon ECR 为通过缓存提取和复制操作创建的新存储库应用的设置。您可以为新存储库定义标签不变性、加密配置、存储库权限、生命周期策略和资源标签。
下图演示了当存储库创建模板与缓存提取操作结合使用时 Amazon ECR 使用的工作流。
以下内容详细描述了存储库创建模板中的每个参数。
- 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_CACHE
和REPLICATION
。例如,您首次使用缓存提取规则来检索上游存储库的内容并将其存储于 Amazon ECR 私有注册表时。当没有与您的缓存提取规则匹配的存储库创建模板时,Amazon ECR 会为新存储库使用默认设置。 - 存储库创建角色
-
存储库创建角色是一个 IAM 角色 ARN,在通过存储库创建模板创建和配置存储库时,该角色将由 Amazon ECR 担任。在模板中使用存储库标签和/或 KMS 时,必须提供此角色,否则存储库创建将失败。
- 镜像标签可变性
-
使用模板创建的存储库要使用的标签可变性设置。如果省略此参数,将使用 MUTABLE 的默认设置,该设置将允许覆盖映像标签。对于通过缓存提取操作创建的存储库所使用的模板,建议使用此设置。这样可以确保当标签相同时,Amazon ECR 可以更新缓存的映像。
如果指定 IMMUTABLE,则存储库中的所有映像标签都将不可变,从而防止这些标签被覆盖。
- 加密配置
-
重要
具有 Amazon KMS(DSSE-KMS)的双层服务器端加密仅在 Amazon GovCloud (US) 区域可用。
使用模板创建的存储库要使用的加密配置。
如果您使用 KMS 加密类型,则使用具有 Amazon KMS 中存储的 Amazon Key Management Service 密钥的服务器端加密来加密存储库的内容。当您使用 Amazon KMS 加密数据时,您可以将默认的 Amazon 托管 Amazon KMS 密钥用于 Amazon ECR,或者指定您自己的 Amazon KMS 密钥(该密钥已创建)。您还可以进一步选择使用 Amazon KMS 的单层或双层加密。有关更多信息,请参阅静态加密。如果您使用的是 KMS 加密类型并将其用于跨区域复制,则可能还需要额外的权限。有关更多信息,请参阅 Creating a KMS key policy for replication。
如果您使用 AES256 加密类型,Amazon ECR 将使用具有 Amazon S3 托管加密密钥的服务器端加密,从而使用 AES-256 加密算法对存储库中的映像进行加密。有关更多信息,请参阅《Amazon Simple Storage Service 用户指南》中的使用采用 Amazon S3 托管加密密钥的服务器端加密 (SSE-S3) 保护数据。
- 存储库权限
-
使用模板创建的存储库要应用的存储库策略。存储库策略使用基于资源的权限来控制对存储库的访问权限。基于资源的权限让您可以指定能够访问存储库的 IAM 用户或角色,以及这些用户或角色可以对该存储库执行的操作。默认情况下,仅创建存储库的 Amazon 账户有权访问存储库。您可以应用策略文档来授予或拒绝针对您的存储库的其他权限。有关更多信息,请参阅 Amazon ECR 中的私有存储库策略。
- 存储库生命周期策略
-
使用模板创建的存储库要使用的生命周期策略。生命周期策略提供了对私有存储库中映像的生命周期管理的更多控制。生命周期策略是一组规则,其中的每个规则为 Amazon ECR 定义一个操作。这提供了一种自动清理容器镜像的方法,例如根据使用期限或计数过期的镜像。有关更多信息,请参阅 在 Amazon ECR 中使用生命周期策略自动清理映像。
- 资源标签
-
资源标签是应用于存储库的元数据,旨在帮助您对其进行分类和整理。每个标签都包含定义的一个密钥和一个可选值。如果您使用的是具有跨区域复制功能的存储库创建模板,则需要将此权限应用于目标注册表策略。