docker 定时清理none镜像

Posted straycats

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了docker 定时清理none镜像相关的知识,希望对你有一定的参考价值。

===============================================

 2019/3/31_第1次修改                       ccb_warlock

 

===============================================

由于通过jenkins生成的docker标记为lastest,故更新服务器拉取新镜像后,会出现多个已经不使用的旧镜像的标记为none。

通过手工清理这些镜像费时费力,故本记录使用定时脚本删除标记为none的镜像。(这样每次更新完之后我不需要再去考虑手工清理镜像,轻松多了)

 

前提:

1. docker部署在linux上(本记录以centos7为例)

 


一、创建删除none的shell脚本

1.1 创建clear.sh

# 编辑clear.sh

vi /opt/clear.sh

将下面的内容添加到clearnoneimages.sh文件中,wq保存。

docker images|grep none|awk ‘{print $3}‘|xargs docker rmi

 

1.2 给该shell脚本增加可执行权限

chmod 777 /opt/clear.sh

 


二、增加定时任务

2.1 编辑crontab

vi /etc/crontab

将下面的内容添加到crontab文件中,wq保存。

# 每天1:00执行该脚本
0 1 * * * root bash /opt/clear.sh

 

2.2 重启crontab

systemctl restart crond

 


参考文档:

1.https://www.cnblogs.com/intval/p/5763929.html

 

以上是关于docker 定时清理none镜像的主要内容,如果未能解决你的问题,请参考以下文章

docker 批量清理删除none镜像

docker 清理无用容器或者镜像

一次性删除docker images中name为none的镜像

Docker 镜像、容器命令

【nexus】Nexus Repository Manager 镜像清理的task设置

Docker 清理命令集锦