返回到文章

采纳

编辑于

Docker容器镜像删除

docker
清理

  1. 停止所有的container,这样才能够删除其中的images:

    docker stop $(docker ps -a -q)
    

    如果想要删除所有container的话再加一个指令:

     docker rm $(docker ps -a -q)
    
  2. 查看当前有些什么images

     docker images
    
  3. 删除images,通过image的id来指定删除谁

     docker rmi <image id>
    

    想要删除untagged images,也就是那些id为的image的话可以用

     docker rmi $(docker images | grep "^<none>" | awk "{print $3}")
    

    要删除全部image的话

     docker rmi $(docker images -q)
    
  4. 清除所有已停止的docker

     # 所有的
     all_list=`docker ps -a -q`
     # 运行中的
     alive_list=`docker ps -q`
    
     for i in $all_list;do
        echo $i   
        result=$(echo $alive_list | grep "$i")
    
        if [[ "$result" != "" ]]
        then
           echo "运行中...."
        else
          echo "已停止,开始删除....清除时间:$(date +%Y%m%d%H%M%S)"
          docker rm -v $i
        fi
    
     done