15.3.2. 创建 registry 范围自动运行策略
可以在新的和现有组织中配置 registry 范围自动运行策略。此功能通过强制执行 registry 范围规则来节省 Red Hat Quay 管理员时间、工作量和存储。
Red Hat Quay 管理员必须通过包含 DEFAULT_NAMESPACE_AUTOPRUNE_POLICY 配置字段以及 number_of_tags 或 creation_date 方法来更新 config.yaml 文件来启用此功能。目前,无法使用 v2 UI 或 API 启用此功能。
使用以下步骤为您的 Red Hat Quay registry 创建自动修剪策略。
先决条件
-
您已启用了
FEATURE_AUTO_PRUNE功能。
流程
更新
config.yaml文件,以添加DEFAULT_NAMESPACE_AUTOPRUNE_POLICY配置字段:要设置策略方法,在其创建日期中删除最旧的标签,直到离开提供的标签数量前,请使用
number_of_tags方法:# ... DEFAULT_NAMESPACE_AUTOPRUNE_POLICY: method: number_of_tags value: 21 # ...- 1
- 在这种情况下,保留两个标签。
要设置策略方法来删除标签,其创建日期早于提供的时间跨度(例如
5d),请使用creation_date方法:DEFAULT_NAMESPACE_AUTOPRUNE_POLICY: method: creation_date value: 5d
- 重启 Red Hat Quay 部署。
可选。如果您需要标记并推送镜像来测试此功能:
标记将推送到 Red Hat Quay registry 的四个示例镜像。例如:
$ podman tag docker.io/library/busybox <quay-server.example.com>/<quayadmin>/busybox:test$ podman tag docker.io/library/busybox <quay-server.example.com>/<quayadmin>/busybox:test2$ podman tag docker.io/library/busybox <quay-server.example.com>/<quayadmin>/busybox:test3$ podman tag docker.io/library/busybox <quay-server.example.com>/<quayadmin>/busybox:test4输入以下命令将四个示例镜像推送到启用了 auto-pruning 的 registry 中:
$ podman push <quay-server.example.com>/quayadmin/busybox:test$ podman push <quay-server.example.com>/<quayadmin>/busybox:test2$ podman push <quay-server.example.com>/<quayadmin>/busybox:test3$ podman push <quay-server.example.com>/<quayadmin>/busybox:test4
- 检查您将镜像推送到的注册表中是否有四个标签。
-
默认情况下,registry 级别的自动修剪程序每 24 小时运行一次。24 小时后,删除了两个最旧的镜像标签,如果您遵循这些指令,则保留
test3和test4标签。检查您的 Red Hat Quay 组织,以确保删除了两个最旧的标签。