首页/开发/CI/CD 与发布速查/镜像仓库垃圾回收
构建与制品管理58 条

镜像仓库垃圾回收

删除 manifest/标签后,底层 blob 仍占用存储:需要执行仓库自己的垃圾回收流程(必要时停写或只读模式)。

CI/CD 与发布速查开发更新于 2026-10-12
原理blob 按内容寻址,可能被多个 manifest 共享;先解除引用,再回收无引用 blob
工具自建 registry 的 garbage-collect 命令;Harbor 的 GC 任务;云仓库多为托管自动化
窗口GC 对仓库有负载与一致性要求:安排在低峰并避免与推送并发

registry 官方工具

registry 官方工具
# registry 需以只读或停写状态运行
bin/registry garbage-collect /etc/docker/registry/config.yml
先做一次「删 tag 后存储未下降」的验证,确认 GC 流程真的在跑。

易错点

  • 只删标签不收垃圾:账单继续涨,删完按计划跑 GC
  • 与推送并发执行 GC:可能出现引用竞争,安排在停写窗口

数据来源与参考

  • Docker Distribution 文档《Garbage collection》
  • Harbor 文档《Garbage Collection》
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌