

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

# Amazon ECR 中的生命周期策略属性
<a name="lifecycle_policy_parameters"></a>

生命周期策略具有以下属性。

要查看生命周期策略的示例，请参阅[Amazon ECR 中的生命周期策略的示例](lifecycle_policy_examples.md)。有关使用创建生命周期策略的说明 AWS CLI，请参阅[创建生命周期策略 (AWS CLI)](lp_creation.md#lp-creation-cli)。

## 规则优先级
<a name="lp_rule_priority"></a>

`rulePriority`  
类型：整数  
是否必需：是  
设置应用规则的顺序，从低到高。优先级为 `1` 的生命周期策略规则首先应用，优先级为 `2` 的规则下一个应用，依此类推。当您向某个生命周期策略添加规则时，必须为每个规则赋予一个唯一的 `rulePriority` 值。但是，在策略中的各规则之间，值不需要顺序。具有 `tagStatus` 值 `any` 的规则必须具有最大的 `rulePriority` 值并且最后被评估。

## 说明
<a name="lp_description"></a>

`description`  
类型：字符串  
是否必需：否  
(可选) 描述生命周期策略中规则的用途。

## 标签状态
<a name="lp_tag_status"></a>

`tagStatus`  
类型：字符串  
是否必需：是  
确定要添加的生命周期策略规则是否为镜像指定标签。可接受的选项包括 `tagged`、`untagged` 或 `any`。如果您指定 `any`，则所有镜像都会根据它们评估规则。如果指定`tagged`，则还必须指定一个`tagPrefixList`或多个`tagPatternList`值。如果指定`untagged`，则必须同时省略`tagPrefixList`和。`tagPatternList`

## 标签模式列表
<a name="lp_tag_pattern_list"></a>

`tagPatternList`  
类型：list[string]  
必填项：`tagStatus` 设置为“已标记”且未指定 `tagPrefixList` 时，是必填项  
为已标记的映像创建生命周期策略时，最佳实践是使用 `tagPatternList` 来指定要过期的标签。您必须指定以逗号分隔的可能包含通配符（`*`）的映像标签模式列表，以便根据此列表执行生命周期策略操作。例如，假设映像标记为 `prod`、`prod1`、`prod2` 等，则可以使用标签模式列表 `prod*` 来指定所有这些映像。如果指定多个标签，则仅选择具有所有指定标签的镜像。  
每个字符串最多可以使用四个通配符（`*`）。例如，`["*test*1*2*3", "test*1*2*3*"]` 有效，而 `["test*1*2*3*4*5*6"]` 无效。

## 标签前缀列表
<a name="lp_tag_prefix_list"></a>

`tagPrefixList`  
类型：list[string]  
必填项：`tagStatus` 设置为“已标记”且未指定 `tagPatternList` 时，是必填项  
仅在您指定了 `"tagStatus": "tagged"` 但未指定 `tagPatternList` 时才使用。您必须指定以逗号分隔的镜像标签前缀列表，以便根据此列表执行生命周期策略操作。例如，如果您的镜像被标记为 `prod`、`prod1`、`prod2` 等，则可以使用标签前缀 `prod` 以指定所有这些标签。如果指定多个标签，则仅选择具有所有指定标签的镜像。

## 存储类
<a name="lp_storage_class"></a>

`storageClass`  
类型：字符串  
必填项：是，如果`countType`是 `sinceImageTransitioned`  
该规则将仅选择该存储类别的图像。使用`imageCountMoreThan`、或 o `countType` `sinceImagePushed` f 时`sinceImagePulled`，唯一支持的值是`standard`。使用计数类型时`sinceImageTransitioned`，这是必需的，唯一支持的值是`archive`。如果省略此项，则`standard`将使用的值。

## 计数类型
<a name="lp_count_type"></a>

`countType`  
类型：字符串  
是否必需：是  
指定要应用于镜像的计数类型。  
如果 `countType` 设置为 `imageCountMoreThan`，您还可以指定 `countNumber` 以创建一个规则，用于设置存储库中存在的镜像数量限制。如果设置`countType`为`sinceImagePushed``sinceImagePulled``sinceImageTransitioned`、或，则还可以指定`countUnit`和`countNumber`来指定存储库中存在的图像的时间限制。

## 计数单位
<a name="lp_count_unit"></a>

`countUnit`  
类型：字符串  
必填项：是，仅`countType`当设置为`sinceImagePushed``sinceImagePulled`、或时 `sinceImageTransitioned`  
指定计数单位 `days` 作为时间单位，除此之外，还指定 `countNumber` 表示天数。  
只有在 `countType` is `sinceImagePushed` `sinceImagePulled`、or 时才应指定此值`sinceImageTransitioned`；如果指定计数单位为任何其他值，`countType`则会出现错误。

## 计数
<a name="lp_count_number"></a>

`countNumber`  
类型：整数  
是否必需：是  
指定计数数量。可接受的值为正整数 (`0` 不是可接受的值)。  
如果使用的 `countType` 是 `imageCountMoreThan`，则该值为您希望在存储库中保留的镜像的最大数量。如果使用的 `countType` 是 `sinceImagePushed`，则该值为镜像的最大使用期限。如果`countType`使用的是`sinceImagePulled`，则该值是自上次拉取图像以来的最大天数。如果`countType`使用的是`sinceImageTransitioned`，则该值为自图像存档以来的最大天数。

## Action
<a name="lp_action"></a>

`type`  
类型：字符串。  
是否必需：是  
指定操作类型。支持的值为`expire`（删除图像）和`transition`（将图像移动到存档存储）。

`targetStorageClass`  
类型：字符串  
必填项：是，如果`type`是 `transition`  
您希望生命周期策略将图像过渡到的存储类别。 `archive`是唯一支持的值。