You need to enable JavaScript to run this app.
导航
清理镜像版本
最近更新时间:2024.09.11 17:52:00首次发布时间:2021.12.17 16:02:28

镜像在业务演进的过程中会产生新的版本,随着镜像版本数量的增加,所消耗的存储成本和系统配额也会随之增加,最终导致镜像推送失败。定期清除不需要的镜像版本可以有效避免此类问题。

场景介绍

镜像仓库中每个 OCI 制品仓库可保存的镜像版本(Tag)数量有限,存储的镜像版本超过限制后,新的镜像版本无法上传。过多的镜像版本即会加大镜像维护的工作量,也会加大存储的成本。建议您使用 版本保留规则,自动清理镜像版本,保证镜像版本配额的充足,以免影响镜像的上传。

本文以正则匹配维度的清理策略为例,在 repo OCI 制品仓库每周日的零时 保留版本号 以 tag 开头 的镜像,即保留例如 tag1tag2 等版本的镜像。

功能介绍

镜像清理的方式十分灵活,可以满足不同场景中的镜像清理需求。当前支持基于数量维度、时间维度和正则匹配维度,在实例、命名空间或 OCI 制品仓库中清理镜像。

  • 清理方式

    • 数量维度:仅保留最新推送的若干个版本,清理其他的版本。例如保留最新的 100 个镜像版本。
    • 时间维度:仅保留最近若干天推送的版本,清理其他的版本。例如保留最近 1 个月的镜像版本。
    • 正则匹配:通过正则表达式保留所需的镜像版本。正则表达式筛选的对象为镜像的版本名,例如 latestv*
  • 清理维度

    • 实例维度:单个实例维度执行清理。
    • 命名空间:单个命名空间维度执行清理。
    • OCI 制品仓库:指定命名空间中的一个或多个 OCI 制品仓库执行清理。

前提条件

已上传镜像至目标制品仓库,操作方法参见 使用标准版实例拉取和推送镜像使用体验版实例推送和拉取镜像

操作步骤

步骤一:创建版本保留规则

  1. 登录 镜像仓库控制台

  2. 在顶部导航栏,选择目标地域。

  3. 在左侧导航栏单击 版本管理 > 版本保留规则

  4. 在 版本保留规则 页面,单击 创建版本保留规则

  5. 填写版本保留规则参数。本示例参数配置如下图所示,效果为在 repo OCI 制品仓库每周日的零时 删除版本号 不以 tag 开头 的镜像。参数配置详细说明参见 版本保留规则管理

    alt

    alt

  6. 单击 确定, 完成操作。

步骤二:执行规则

已设定定时执行的规则也支持手动触发。

  • 自动执行:支持按照本示例设置的每周日零时自动执行清理。在版本保留规则列表页面的 触发方式 列,可查看定时执行的具体时间。
    alt

  • 手动执行:您可以可手动触发镜像清理。在版本保留规则列表页面,单击 操作 列下的 执行,在二次确认页面单击 确定

    alt

步骤三:查看清理记录

  1. 版本保留规则 页面单击目标规则的名称。
    alt

  2. 单击目标执行任务的 ID,查看已保留或已清理的镜像信息。

    alt

结果验证

如果图所示,已按照创建的版本保留规则,保留了 tag1tag2 和 tag3 镜像版本,清理了其他的镜像版本。

  • 清理前
    alt

  • 清理后

    alt

常用正则匹配规则

正则规则含义
^release-([0-9.]+)$release- 和阿拉伯数字拼接而成的镜像版本号,例如 release-1
^([0-9.]+)$以阿拉伯数字为前缀的镜像版本号,例如 111 等。
^tag.*以 tag 为前缀的镜像版本号,例如 tag2