8.11. 不可变标签概述
不可变标签允许用户锁定特定的镜像标签,以防止它们被覆盖、修改或删除。这样可保证稳定、可信的构建和发行版本参考,满足严格的法规和合规性要求。
当标签标记为不可变时,系统会阻止标签覆盖、手动或编程删除,并由后台 worker 自动运行。另外,无法更改与不可变标签关联的清单标签。
可以通过三种方法,将不可变性应用到机构和机构拥有的存储库中的标签:
- 单个 Tag Settings: 具有写入权限的用户可以通过 Red Hat Quay v2 UI 或 API 手动切换特定标签的不可变状态。
-
immutability Policies: 管理员可以在机构或存储库级别上定义正则表达式模式(例如,
releaseldapmodify )。任何与模式匹配的标签都会自动标记为不可变。 -
清单标签 : 开发人员可以在构建过程中触发不可变性,方法是在 Dockerfile 或 Containerfile 中包含
quay.immutable=true标签。
注意
个人用户命名空间无法使用不可变标签。
8.11.1. 使用 Red Hat Quay v2 UI 管理标签不可变性 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
要防止标签被更改或删除,您可以使用 Red Hat Quay v2 UI 管理其不可变性。使用 Tag 菜单为标签设置或删除不可变。
先决条件
- 您已登录到 Red Hat Quay。
-
您已在
config.yaml文件中将FEATURE_IMMUTABLE_TAGS设置为True。
流程
- 在 Red Hat Quay v2 UI 上,单击 Organizations,然后是标签所在的组织的名称。
- 单击标签所在的存储库的名称。
- 单击导航窗格中的 Tags。
- 对于您要使其不可变的标签,点菜单 kebab 图标,然后单击 Make immutable。
- 可选: 要删除不可变策略,请点菜单 kebab 图标,然后点 Remove immutability。