2023-09-23 更新 1011 阅读
温馨提示:
本文最后更新于2023年09月23日,已超过493天没有更新,若内容或图片失效,请留言反馈。
在使用 Docker 的过程中,经常会留下一些不需要的容器和镜像。
下面一些常用命令来删除&清理相关的容器和镜像。
一:容器
① 列出所有的容器
docker ps -a
② 列出所有的容器 ID
docker ps -aq
③ 杀死所有的容器
docker kill $(docker ps -aq)
④ 停止所有的容器
docker stop $(docker ps -aq)
⑤ 删除所有的容器
docker rm $(docker ps -aq)
⑥ 停止所有异常的容器
docker ps -a | grep "Exited" | awk '{print $1}' | xargs docker stop
⑦ 删除所有异常停止的容器
docker ps -a | grep "Exited" | awk '{print $1}' | xargs docker rm
二:镜像
① 通过标签删除镜像
下面两个都可以删除镜像:
docker rmi [image]
或者:
docker image rm [image]
支持的子命令如下:
-f, -force: 强制删除镜像,即便有容器引用该镜像;
-no-prune: 不要删除未带标签的父镜像;
② 通过 ID 删除镜像
除了通过标签名称来删除镜像,我们还可以通过指定镜像 ID, 来删除镜像,如:
docker rmi b7b28af77ffe
③ 批量删除无 tag 标签镜像
在 Docker 构建镜像过程产生的临时镜像,或者遗留下来的垃圾镜像,可以通过以下命令删除。
docker ps -a|grep "Exited" | awk '{print $1}' | xargs docker stop
docker ps -a|grep "Exited" | awk '{print $1}' | xargs docker rm
docker images|grep none|awk '{print $3}'|xargs docker rmi
④ 删除所有镜像
docker rmi $(docker images -q)
⑤ 清理镜像
我们在使用 Docker 一段时间后,系统一般都会残存一些临时的、没有被使用的镜像文件,可以通过以下命令进行清理:
docker image prune
支持的子命令有:
-a, --all: 删除所有没有用的镜像,而不仅仅是临时文件;
-f, --force:强制删除镜像文件,无需弹出提示确认;
评论已关闭