Docker定时删除none镜像

在使用docker的时候会产生none镜像文件,偶尔没什么,但是比如使用了自动化部署工具那就不一样了,一天没准就上百个none镜像了,非常消耗资源,所以需要定时清理

删除 none 镜像命令

docker image prune -f

img.png img_1.png

删除自动化部署中的碎片化文件

在自动化部署中 Docker 生成了很多碎片化文件,在使用 Jenkins 自动化部署项目时,生成了很多 Images 和创建的容器,这些上面的命令不足以删除,所以得用以下命令来删除

图片[3]-Docker定时删除none镜像-诚哥博客

图片[4]-Docker定时删除none镜像-诚哥博客

docker system prune -f

注意该命令会删除这些容器和镜像,所以最好慎重选择,当然,如果全是自动部署的容器就无所谓。 图片[5]-Docker定时删除none镜像-诚哥博客

执行完后 图片[6]-Docker定时删除none镜像-诚哥博客

其实这样清除缓存文件不是最完全的方式,最完全的是把空闲的 Volumes 也一并清除(不过我怕容器在启动过程中被自动执行了导致数据永久丢失,得不偿失 所以不加这个吧)

docker system prune --volumes -f

配置自动化

既然知道了删除 none 镜像的命令,那么就简单了,只需要配置下 crontab 即可

crontab -e

尾部添加如下指令(表示每天 凌晨 3 点 30 分执行一次)

30 3 * * * docker system prune -f

总结

使用 docker 好像并没有可以自动删除的功能,不知道有没更好的办法,这种算是比较简单的了,记录一下。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容