记录Harbor私有仓库的镜像占用磁盘空间过大,如何彻底删除其中的冗余docker镜像,来释放服务器磁盘空间
harbor
Harbor 是一个开源的容器镜像仓库,用于存储和管理 Docker 镜像和其他容器镜像。 * 容器镜像仓库、存储和管理 Docker 镜像和其他容器镜像 * 有什么特点:支持多种镜像格式、易于使用、安全性和访问控制
项目地址:https://gitcode.com/gh_mirrors/ha/harbor
免费下载资源
·
场景:
harbor服务器磁盘占用为100%:
听同事说,harbor服务器,不能上传镜像,jenkins不能正常工作。
问题描述:
最开始以为,docker的日志,占用过多,但是用脚本删除,磁盘仍然占用100%
#!/bin/sh
echo "======== start clean docker containers logs ========"
logs=$(find /var/lib/docker/containers/ -name *-json.log)
for log in $logs
do
echo "clean logs : $log"
cat /dev/null > $log
done
echo "======== end clean docker containers logs ========"
最后,到harbor的管理界面,去手动删除部分删除其中的冗余docker镜像,回到,linux查看磁盘空间,仍然占用100%。
原因分析:
原来是harbor私有仓库的删除镜像,没有释放空间。查阅资料,发现通过Harbor界面删除相关镜像,并不会自动删除存储中的文件和镜像。需要停止Harbor服务,执行垃圾回收命令,进行存储空间清理和回收。
解决方案:
要启用垃圾回收(GC),首先要关闭Harbor服务,然后再执行清理命令。
关闭Harbor服务
docker stop $(docker ps -a -q)
再执行清理命令
#使用--dry-run参数运行容器,预览运行效果,但不删除任何数据
$ docker run -it --name gc --rm --volumes-from registry vmware/registry:2.6.2-photon garbage-collect --dry-run /etc/registry/config.yml
# NOTE: The above option "--dry-run" will print the progress without removing any data.
# Verify the result of the above test, then use the below commands to perform garbage collection and restart Harbor.
#不使用--dry-run参数,将删除相关的文件和镜像,
$ docker run -it --name gc --rm --volumes-from registry vmware/registry:2.6.2-photon garbage-collect /etc/registry/config.yml
刷新系统配置
systemctl daemon-reload && systemctl restart docker
重启Harbor相关服务
docker restart $(docker ps -a -q)
Harbor web界面删除冗余镜像
总结
以上步骤,可以循环执行,多释放空间,就多次执行,对其他服务没有伤害。
GitHub 加速计划 / ha / harbor
23.24 K
4.68 K
下载
Harbor 是一个开源的容器镜像仓库,用于存储和管理 Docker 镜像和其他容器镜像。 * 容器镜像仓库、存储和管理 Docker 镜像和其他容器镜像 * 有什么特点:支持多种镜像格式、易于使用、安全性和访问控制
最近提交(Master分支:2 个月前 )
9e55afbb
pull image from registry.goharbor.io instead of dockerhub
Update testcase to support Docker Image Can Be Pulled With Credential
Change gitlab project name when user changed.
Update permissions count and permission count total
Change webhook_endpoint_ui
Signed-off-by: stonezdj <stone.zhang@broadcom.com>
Co-authored-by: Wang Yan <wangyan@vmware.com> 15 天前
3dbfd422
Signed-off-by: wang yan <wangyan@vmware.com> 15 天前
更多推荐
已为社区贡献2条内容
所有评论(0)