docker批量删除容器或镜像

删除容器

停止所有容器

删除所有容器,需要先停止所有运行中的容器

docker stop `docker ps -a -q`

docker ps -a -q,意思是列出所有容器(包括未运行的),只显示容器编号,其中

  • -a : 显示所有的容器,包括未运行的。
  • -q : 静默模式,只显示容器编号。

1. 删除所有处于停止状态的容器

使用以下命令删除所有处于停止状态的容器:

docker container prune

该命令将删除所有未运行的容器,释放它们占用的资源。

或者使用这条命令,删除所有容器

docker rm `docker ps -a -q`

2. 删除特定状态的容器

使用以下命令删除处于特定状态的容器:

docker container rm $(docker container ls -aqf status=exited)

该命令将删除所有已停止的容器。你还可以使用其他状态值,例如createdrestartingdead

3. 删除所有容器

如果你想删除所有容器,包括正在运行的容器,可以使用以下命令:

docker container rm -f $(docker container ls -aq)

该命令将强制删除所有容器,包括正在运行的容器。

删除镜像

1. 删除所有未被使用的镜像

使用以下命令删除所有未被使用的镜像:

docker image prune

该命令将删除所有未被使用的镜像,包括没有被任何容器引用的镜像。

2. 删除特定镜像

使用以下命令删除特定的镜像:

docker image rm <image_name>:<tag>

将<image_name>替换为要删除的镜像名称,将 替换为要删除的镜像标签。

3. 删除所有镜像

如果你想删除所有镜像,可以使用以下命令:

docker image rm $(docker image ls -aq)

该命令将删除所有镜像,包括被使用的镜像。请注意,如果某个镜像正在被使用,则无法删除该镜像。

4.按条件删除镜像

删除无标签镜像(即 TAG 为 none 的镜像 dangling image,悬浮镜像)

docker rmi `docker images -q | awk '/^<none>/ { print $3 }'`

也可以使用如下命令删除

docker rmi $(docker images -q -f dangling=true)

删除包含某关键字的镜像

docker rmi --force `docker images | grep test-api | awk '{print $3}'` //其中test-api为关键字

猜你喜欢

转载自blog.csdn.net/Guzarish/article/details/130859015