Harbor 清理镜像(此方法比较粗暴,但是有效)

Posted nnylee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Harbor 清理镜像(此方法比较粗暴,但是有效)相关的知识,希望对你有一定的参考价值。

0x00 事件

Harbor 私有仓库中占有的存储慢慢越来越大,使用官方的清理工具以及 UI 上的垃圾清理,都似乎也不能清理掉……
后来吾用了一种简单粗暴的方法清理镜像——删除 harbor registry

0x01 处理

此方法只会删除掉仓库内的所有镜像,不会删除在 Harbor UI 上看到的项目以及镜像名称,所以只要再构建镜像上传回来私有仓库,就能正常使用。

这需要考虑应用场景,如私有仓库内的镜像都可以不保留(反正需要更新),那么可以使用吾这种粗暴的方法。

1、删除 harbor registry
在 harbor 的 docker-compose.yml 文件中,看到了 registry 的 storage 映射在宿主机的 /data/registry 目录

技术图片

接下来去这个目录下删东西

# 停止 Harbor 服务
[root@harbor harbor]# docker-compose down
# 进入 sha256 目录
[root@harbor ~]# cd /data/registry/docker/registry/v2/blobs/sha256/
# 查看大小
[root@harbor sha256]# du -h --max-depth=1 .
# 删除 sha256 目录下所有文件
[root@harbor sha256]# rm -rf  ./*
# 重启 Harbor 服务
[root@harbor harbor]# cd -
[root@harbor harbor]# docker-compose -d

2、垃圾清理
因为是粗暴清理,所以还会存在一些关系依赖,从而会导致镜像拉不下来,
所以立即清理垃圾,清理完成即可正常上传下载。

技术图片

以上是关于Harbor 清理镜像(此方法比较粗暴,但是有效)的主要内容,如果未能解决你的问题,请参考以下文章

harbor磁盘爆满,执行垃圾回收清理镜像

使用nodejs+ harbor rest api 进行容器镜像迁移

Harbor私有仓库中如何彻底删除镜像释放存储空间?

Docker 仓库Harbor

「开源摘星计划」华为云SWR镜像同步到Harbor

harbor中碰到的问题