有一个机器里面的docker 想改下参数,然后重启

结果问题来了,systemctl start docker之后等了10分钟一直卡住不动,顿时感觉不对劲了

一开始以为参数修改的有问题,修改好几版之后,发现,参数修改错误启动会直接报错,修改的对会卡住

后百度一番,以及经过查找之后得出答案

docker overlay2目录里的镜像目录太多导致,目测有几千个。。

好在找到了解决方法:

#先运行清理程序
systemctl start docker-cleanup.service
#后启动服务
systemctl start docker

 

执行之后傻眼了

 

根本就没安装啊,几番查找之后也没找到本地安装的方法

于是我想,既然是overlay2文件过多,那总有加载完的时候,那我就板等就行

于是输入完systemctl start docker之后,我开始琢磨清理overlay2镜像的问题

我们部署会删除废弃的容器,但是不会处理镜像,那我只针对镜像清理就可以了

经过一番查找,找到了命令

docker image prune -a

这个命令是用来删除没有任何容器和他关联的镜像文件,我觉得是比较安全的

这里要说下思考逻辑:没有运行的容器有可能是意外挂掉的有用的,或者临时停掉的,但是没有和任何容器关联的镜像文件肯定是没用的!

时间也大概过了40分钟,再查看docker服务,成功启动了!

于是我赶紧清理起镜像文件来

 

后记:

所以,这件事上提醒我们,定期清理废弃的镜像文件和容器还是很有必要的,否则指不定哪天启动一下docker要等一个小时!

 

参考文档:

https://blog.csdn.net/achaodzyj/article/details/116074208

http://www.5ityx.com/cate100/270437.html

http://www.360doc.com/content/21/1122/13/77800916_1005383114.shtml

posted on 2023-06-07 20:27  06  阅读(1103)  评论(0编辑  收藏  举报