docker如何删除<none>/dangling/悬空镜像
问题
在docker build 的过程中会出现中间镜像。中间镜像不一定会自动删除。
会占用存储空间
可以通过以下命令查找悬空的镜像
docker images -f dangling=true
docker images更多用法可以看我的这篇文章
积少成多,悬空镜像还是很占用空间的。
具体占用系统哪块空间可以使用以下命令
docker image inspect <IMAGE_ID>
在GraphDriver中间,显示的就是在服务器中存储在哪里。
可以通过修改data-root来更换位置
解决
情况悬空镜像可以通过以下命令来清楚
docker rmi $(docker images -f "dangling=true" -q)
也可以通过以下命令来删除。
docker image prune
但是如果加上-a会有一个问题,按照官方解释加上-a不仅会删除悬空镜像,还会删除未使用的镜像。
比如说我下载了某个镜像A,但是没有生成容器呢,或者容器已经删除了,这时这个镜像A就叫做未使用的镜像。
可以参考:
https://stackoverflow.com/questions/45142528/what-is-a-dangling-image-and-what-is-an-unused-image
删除过程中可能出现以下问题
Error response from daemon: conflict: unable to delete bcd6c489bc72 (must be forced) - image is being used by stopped container e34ee987580c
代表有容器正在使用,通过以下命令查看是哪个容器
docker ps -a |grep e34ee987580c
通过输出可以知道这个容器已经退出了,并且红框里这个命名规则是docker自动生成的,是一个“比较奇怪的组合”
可以放心删除
docker rm e34ee987580c
清理之后就可以删除悬空镜像了
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Jenkins+docker发布Springbot服务的实现
本文主要介绍了Jenkins+docker发布Springbot服务的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-03-03docker安装Elasticsearch7.6集群并设置密码
这篇文章主要介绍了docker安装Elasticsearch7.6集群并设置密码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-06-06Docker Windows最新版(4.17.x)修改镜像存储路径的详细步骤
这篇文章主要介绍了Docker WIndows最新版(4.17.x)修改镜像存储路径的步骤,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-03-03
最新评论