4.2. 标签过期
可以使用名为 标签到期的功能,在所选日期和时间上将镜像设置为过期。有关标签过期情况,如下所示:
- 当标签过期时,标签会从存储库中删除。如果它是特定镜像的最后一个标签,则镜像被设置为删除。
- 过期时间以按标签为基础设置,而不是为整个仓库进行设置。
- 当标签过期或被删除时,它不会立即从 registry 中删除。Time Machine (用户设置中)的值定义了删除标签何时实际删除并垃圾回收。默认情况下,该值为 14 天。在此之前,标签可以重新指向过期或删除的镜像。
- Red Hat Quay 超级用户没有与从用户存储库中删除过期的镜像相关的特殊特权。超级用户没有中央机制来收集用户存储库的信息和操作。它最多是每个仓库的所有者,用于管理过期时间并最终删除其镜像。
可使用不同方式设置标签过期:
-
在创建镜像时,通过在 Dockerfile 中设置
quay.expires-after=LABEL。这会将一个时间设置为在构建镜像时过期。 - 通过在 EXPIRES 列中选择存储库标签的过期日期,然后选择要过期的特定日期和时间。
下图显示了当标签过期时更改标签到期的 Options 条目和 EXPIRES 字段。将鼠标悬停在 EXPIRES 字段上,以查看当前设置的过期日期和时间。
4.2.1. 从 Dockerfile 设置标签过期 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
通过 Dockerfile LABEL 命令添加类似 quay.expires-after=20h 的标签,会导致标签在指定的时间后自动过期。时间值可以类似 1h, 2d, 3w,分别代表小时、天和星期(自镜像构建的时间)。
4.2.2. 从仓库中设置标签过期 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
在 Repository Tag 页面中,有一个名为 EXPIRES 的 UI 列,指示标签何时过期。用户可以通过点击将过期的时间或者点击右侧的 Settings 按钮(gear 图标)并选择 Change Expiration 来设置。
出现提示时选择日期和时间,然后选择" 更改到期 "。达到过期时间时,标签将设置为从存储库中删除。