Docker定時刪除none鏡像
在使用docker的時候會產生none鏡像文件,偶爾沒什麼,但是比如使用了自動化部署工具那就不一樣了,一天沒準就上百個none鏡像了,非常消耗資源,所以需要定時清理
刪除 none 鏡像命令
docker image prune -f
刪除自動化部署中的碎片化文件
在自動化部署中 Docker 生成了很多碎片化文件,在使用 Jenkins 自動化部署項目時,生成了很多 Images 和創建的容器,這些上面的命令不足以刪除,所以得用以下命令來刪除
docker system prune -f
注意該命令會刪除這些容器和鏡像,所以最好慎重選擇,當然,如果全是自動部署的容器就無所謂。
執行完後
其實這樣清除緩存文件不是最完全的方式,最完全的是把空閑的 Volumes 也一併清除(不過我怕容器在啟動過程中被自動執行了導致數據永久丟失,得不償失 所以不加這個吧)
docker system prune --volumes -f
配置自動化
既然知道了刪除 none 鏡像的命令,那麼就簡單了,只需要配置下 crontab 即可
crontab -e
尾部添加如下指令(表示每天 凌晨 3 點 30 分執行一次)
30 3 * * * docker system prune -f
總結
使用 docker 好像並沒有可以自動刪除的功能,不知道有沒更好的辦法,這種算是比較簡單的了,記錄一下。
本文由「誠哥博客」原創,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:Docker定時刪除none鏡像