我在/ var / lib / docker / aufs文件夹中有很多空间(分区已满)。
我用以下方法清理了卷:
docker volume rm $(docker volume ls -qf dangling=true)
使用以下命令清除图像:
docker rmi $(docker images --filter "dangling=true" -q --no-trunc)
但是对
/var/lib/docker/aufs
文件夹没有影响。有任何想法吗?
谢谢
最佳答案
docker volume ls -qf dangling=true
列出当前未分配给容器的卷。可能有些卷仍在使用中,因此此命令不会删除所有卷。我个人避免使用此命令进行清理,因为它可能会删除当前未使用的卷,但其中包含重要的数据,我希望稍后将其装入容器中。docker images --filter "dangling=true" -q --no-trunc
列出未标记的图像。造成这种情况的最可能原因是拉出或构建本地计算机上已有的旧镜像的新版本。它不会清除您拉出或构建的所有图像,仍然带有标签,但不使用。
这些命令都不清除可能已停止且不再需要的容器。为此,您需要查看docker ps -af status=exited
来查看哪些容器未运行,并且可以使用docker rm
删除。脚本化,如下所示:
docker rm $(docker ps -aqf status=exited)
在1.13版本中,您现在可以运行:
docker system prune
这将清理所有内容,或者您可以更具体地清理特定的部分,例如:
docker container prune
docker image prune
docker volume prune
docker image prune
命令可以使用-a
选项来修剪所有未使用的图像,而不仅仅是修剪的图像。
关于docker - Docker不能释放干净操作的空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42647904/