定时清理docker不再使用的none镜像

使用jenkins构建docker镜像进行发布,新构建的docker镜像会被标记为latest,而不再使用的docker镜像会被标记为none,这样就会导致在磁盘里存留着大量的废弃镜像。所以有必要对旧的镜像进行清理。

最好的方法是利用系统的定时器crontab来执行定时清理的任务。

一、添加清理none镜像的脚本clear.sh

在clear.sh添加以下内容:

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

大概原理是匹配出none的镜像,然后通过管道传值给docker rmi进行删除

二、添加删除脚本clear.sh到定时任务crontab中

打开crontab配置

$vim /etc/crontab

如配置凌晨2点执行脚本:

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


版权声明:著作权归作者所有。

相关推荐

Docker销毁所有容器和镜像脚本

如果有权限问题,使用root或者使用sudo执行。#!/bin/bash # 停止所有的容器 docker stop $(docker ps -a -q) # 删除所有的容器 docker rm $(docker ps -a -q) # 删除所有的镜像 docker rmi $(docker images -q)

Angular CLI修改npm镜像为淘宝镜像cnpm

Angular CLI提供了ng set 命令用于设置参数。修改为淘宝镜像需要设置packageManager配置。ng set --global packageManager=cnpm 修改为npm镜像ng set --global packageManager=npm 查看所有配置项:ng ge

Docker删除多个镜像image

Docker使用命令rmi删除镜像。docker删除单一镜像docker rmi image_name:version/image-id docker删除所有镜像docker rmi $(docker images -qf "dangling=true") docker删除除了特定的镜像外的所有镜像可以使用g

Spring定时任务@Scheduled的cron表达式

基本语法cron表达式由6-7个时间域组成,每个时间域之间用空格隔开。格式:<秒> <分> <时> <日期> <月> <星期> <年份> 秒:取值范围0-59分:取值范围0-59时:取值范围0-23日期:每月的的几数,0-31月:取值范围1-12,或英文简