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、垃圾清理
因為是粗暴清理,所以還會存在一些關系依賴,從而會導致鏡像拉不下來,
所以立即清理垃圾,清理完成即可正常上傳下載。