Docker:无法移除悬挂的容器

当我尝试执行一个命令来列出所有的死亡或悬挂docker,并直接删除它:

docker volume rm $(docker volume ls -qf dangling = true)

它会抛出一个exception:

无法移除Docker根目录/ var / lib / docker:/ home / docker / volumes / ffdffa840a2fb54799aab3de565d02458915f460dc785b7288926729251e1b61 / _data

同样的问题,下面为我工作

cd /home/docker/volumes/ rm -rf $(docker volume ls -qf dangling=true) 

可能是一个已知的问题。 现在有一段时间我有这个小助手:

 #!/bin/bash imgs=$(docker images | awk '/<none>/ { print $3 }') if [ "${imgs}" != "" ]; then echo docker rmi ${imgs} docker rmi ${imgs} else echo "No images to remove" fi procs=$(docker ps -a -q --no-trunc) if [ "${procs}" != "" ]; then echo docker rm ${procs} docker rm ${procs} else echo "No processes to purge" fi 

最多连续运行两次似乎清理了大部分问题。 我想我是根据两年前的一些博客文章写的。