侧边栏壁纸
博主头像
枕头下放双臭袜子博主等级

今我何功德,曾不事农桑

  • 累计撰写 162 篇文章
  • 累计创建 30 个标签
  • 累计收到 0 条评论

解决docker image has dependent child images 错误

枕头下放双臭袜子
2021-03-11 / 0 评论 / 0 点赞 / 542 阅读 / 780 字 / 正在检测是否收录...

问题描述:

在Docker中删除images有时会遇到类似的报错:

Error response from daemon: conflict: unable to delete 6ec9a5a0fc9f 
(cannot be forced) - image has dependent child images

这样的错误,原因是有另外的 image FROM 了这个 image,可以使用下面的命令列出所有在指定 image 之后创建的 image 的父 image

docker image inspect --format='{{.RepoTags}} {{.Id}} {{.Parent}}' $(docker image ls -q --filter since=xxxxxx)

# 其中 xxxxxx 是报错 image 的 id,在文章开头的例子中就是 6ec9a5a0fc9f。从列表中查找到之后就可以核对并删除这些 image

查找出所有在指定 image 之后创建的 image 的父 image,删除关联的依赖镜像,关联的none镜像也会被删除

其他操作

# 停止所有容器
docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker stop

# 删除所有容器
docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker rm

# 删除所有none容器
docker images|grep none|awk '{print $3 }'|xargs docker rmi

参考:

0

评论