批量删除Docker image,Docker volume,Docker container

2023-09-25 197 0

docker icon

批量删除镜像:

方法一:

docker images | grep 'abcdefg' | awk '{print $1 ":" $2}' | xargs -n 1 docker rmi

方法二:

docker images --format="{{.Repository}}:{{.Tag}}" | grep 'abcdefg' | xargs docker rmi

方法三:

docker rmi $(docker images --format="{{.Repository}}:{{.Tag}}" | grep 'abcdefg')

注意:当需要删除 tag 为 <none> 的镜像时,使用如下命令

docker rmi $(docker images --filter 'dangling=true' -q --no-trunc)

删除失败报错

Error response from daemon: conflict: unable to delete d7981d175258 (must be forced) - image is referenced in multiple repositories
Error response from daemon: conflict: unable to delete d7981d175258 (must be forced) - image is referenced in multiple repositories
Error response from daemon: conflict: unable to delete 148b561b7a18 (must be forced) - image is referenced in multiple repositories
Error response from daemon: conflict: unable to delete 148b561b7a18 (must be forced) - image is referenced in multiple repositories
有时上面的命令不能生效,会提示需要强制删除,可以加上 '-f' 强制删除

docker rmi -f $(docker images --filter 'dangling=true' -q --no-trunc)

批量删除 volume

docker volume ls | grep -v 'VOLUME NAME' | awk '{print $2}' | xargs docker volume rm

批量删除 container

先停止
docker ps -a | grep 'abcdefg' | awk '{print $1}' | xargs docker stop

再删除
docker ps -a | grep 'abcdefg' | awk '{print $1}' | xargs docker rm
或者
docker rm $(docker ps -a | grep 'abcdefg' | awk '{print $1}')

相关文章

Cloudflare SSL 证书即将改为 ISRG Root X1
Microsoft teams 连接器(connector)即将停用,但工作流(workflows)也不能用
记录一次Helm故障修复(Helm rollback)
免费试用阿里云 2C4G 3个月搭建个人wordpress
Linux 操作系统常用快捷键
基于 Terraform 在 Azure 创建一个VM