美文网首页
自动清除Docker的none镜像

自动清除Docker的none镜像

作者: 测试生财 | 来源:发表于2020-07-24 09:28 被阅读0次

    在docker build 或是 pull某镜像的时候,经常会产生镜像时候,在Docker中被称为dangling的镜像,特点是label为none。

    大量的none镜像会把磁盘撑爆了,导致disk full,无法进行文件的创建。

    一、标签为<none>的docker镜像

    如下就是一组none镜像:

    [root@ccg]# docker images

    REPOSITORY          TAG                IMAGE ID            CREATED            VIRTUAL SIZE

    centos6.5          v2                          434c6fa14315        9 seconds ago      254.8 MB

    <none>              <none>              819f53017d76        56 minutes ago      254.8 MB

    二、清理方式

    如何清除<none>镜像?

    1.使用docker image prune

    2.使用docker rmi

    先说第一种

    使用docker prune删除镜像,我们只需执行:

    docker image prune -f

    第二种方式:

    docker rmi -f  `docker images | grep '<none>' | awk '{print $3}'` 

    另外,对应系统中异常退出的容器我们也经常需要清理

    docker rm `docker ps -a | grep Exited | awk '{print $1}'` 

    三、配置自动化

    配置自动化删除,在对应的机器上配置crontab

    1. crontab -e

    2. 添加如下指令(分别在凌晨前删除none标签的镜像和异常退出的容器)

    59 23 * * *  docker rmi -f  `docker images | grep '' | awk '{print $3}'`

    59 23 * * *  docker rm `docker ps -a | grep Exited | awk '{print $1}'`

    相关文章

      网友评论

          本文标题:自动清除Docker的none镜像

          本文链接:https://www.haomeiwen.com/subject/zvgdlktx.html