docker批量删除临时镜像
作者:chenzfp
docker批量删除Tag=<none>
的临时镜像
在开发的时候,需要经常发布开发包,在使用docker build
构建镜像的时候,同一个版本经常会使用相同tag,频繁打包一段时间后,本地会出现很多Tag=<none>
的临时镜像,这时可以通过如下命令来批量删除
命令一
docker rmi $(docker images | grep "none" | awk '{print $3}')
运行 docker rmi $(docker images | grep "none" | awk '{print $3}')
命令可以删除所有标签为 "none"
的Docker镜像。这里是这个命令的分解及其工作原理:
docker images
:列出本地Docker镜像。grep "none"
:过滤输出,只保留包含 "none"
字符串的行。通常,这些行表示没有标签的镜像。awk '{print $3}'
:使用awk命令从过滤后的行中提取第三列,这一列通常包含镜像ID。$(...)
:命令替换,将子命令的输出作为参数传递给外部命令。docker rmi
:删除一个或多个Docker镜像。
总结起来,这个命令会找到所有标签为 “none” 的镜像ID,并将这些ID传递给 docker rmi 命令,从而删除这些镜像。
命令二
docker rmi $(docker images -q -f dangling=true)
运行 docker rmi $(docker images -q -f dangling=true)
命令可以删除所有悬空(dangling
)镜像,即那些没有被任何容器使用的镜像。这个命令的作用及其工作原理如下:
docker images -q -f dangling=true
:docker images
:列出本地Docker镜像。-q
:仅返回镜像ID。-f dangling=true
:只列出悬空镜像。$(...)
:命令替换,将子命令的输出作为参数传递给外部命令。docker rmi
:删除一个或多个Docker镜像。
总结起来,这个命令会找到所有悬空镜像的ID,并将这些ID传递给docker rmi命令,从而删除这些镜像。
到此这篇关于docker批量删除临时镜像的文章就介绍到这了,更多相关docker批量删除临时镜像内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!