{{< details >}}
- Tier: 基础版, 专业版, 旗舰版
- Offering: JihuLab.com, 私有化部署
{{< /details >}}
没有自动删除 blobs 的过程。除非您手动删除它们,否则它们将被无限期存储。本页介绍了几种从缓存中清除未使用项目的选项。
检查依赖代理存储使用情况
使用配额 页面显示了容器镜像依赖代理的存储使用情况。
使用 API 清除缓存
要回收不再需要的镜像 blob 使用的磁盘空间,请使用依赖代理 API清除整个缓存。如果清除缓存,下次运行流水线时必须从 Docker Hub 拉取镜像或标签。
清理策略
{{< history >}}
- 在极狐GitLab 15.0 中,所需角色从开发人员更改为维护者。
- 在极狐GitLab 17.0 中,所需角色从维护者更改为所有者。
{{< /history >}}
在极狐GitLab 中启用清理策略
您可以从用户界面为容器镜像的依赖代理启用自动生存时间 (TTL) 策略。为此,请转到您的群组的 设置 > 软件包和仓库 > 依赖代理,并启用设置以在 90 天后自动清除缓存中的项目。
使用 GraphQL 启用清理策略
清理策略是一个计划任务,您可以用来清除不再使用的缓存镜像,从而释放额外的存储空间。策略使用生存时间 (TTL) 逻辑:
- 配置的天数。
- 所有在该天数内未被拉取的缓存依赖代理文件将被删除。
使用 GraphQL API 启用和配置清理策略:
mutation {
updateDependencyProxyImageTtlGroupPolicy(input:
{
groupPath: "<your-full-group-path>",
enabled: true,
ttl: 90
}
) {
dependencyProxyImageTtlPolicy {
enabled
ttl
}
errors
}
}
请参阅 GraphQL 入门指南,了解如何进行 GraphQL 查询。
当策略最初启用时,默认的 TTL 设置为 90 天。一旦启用,过时的依赖代理文件将每天排队等待删除。由于处理时间,删除可能不会立即发生。如果在缓存文件被标记为过期后拉取镜像,过期文件将被忽略,并从外部仓库下载和缓存新文件。