【运维】docker批量删除临时镜像(两种方式)

docker批量删除Tag=<none>的临时镜像

在开发的时候,需要经常发布开发包,在使用docker build构建镜像的时候,同一个版本经常会使用相同tag,频繁打包一段时间后,本地会出现很多Tag=<none>的临时镜像,这时可以通过如下命令来批量删除

命令一

sh 复制代码
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 命令,从而删除这些镜像。

命令二

sh 复制代码
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命令,从而删除这些镜像。

相关推荐
数智启示录9 分钟前
PostgreSQL 内存调优实战(第 12 篇):work_mem 只调大 64 倍,峰值为什么远不止 64 倍
运维·数据库·经验分享·postgresql·面试
云登指纹浏览器25 分钟前
RPA 与指纹浏览器集成:多账号自动化运营的5项环境配置
运维·自动化·rpa
wtblszn39 分钟前
城市内河在线监测系统方案
运维·物联网
Le_ee1 小时前
科来流量分析/结合MCP自动化
运维·自动化
发光的沙子2 小时前
嵌入式系统架构师----Ubuntu如何安装不在列表内的软件?
linux·运维·ubuntu
C+ 安口木2 小时前
Alibaba Cloud Linux 3 服务器环境搭建实战记录
linux·运维·服务器
石小千2 小时前
Docker 笔记(九)--离线安装
docker·容器
迪康Defender2 小时前
公用电脑责任追溯难?迪康端点安全一体化管理系统用户模式详解
java·运维·开发语言·网络·其他·安全
迪康Defender3 小时前
迪康端点安全一体化管理系统文档安全:构建企业文档资产全链路防护体系
运维·网络·安全·web安全·终端安全管理
zhangguojia73 小时前
权限弹窗点击允许的授权流程
运维·服务器·数据库