为什么删除docker容器和图像不会释放Windows上的存储空间?怎么解决?

时间:2016-04-22 17:12:03

标签: windows docker virtualbox

问题:

当我下载并运行容器时,它们会占用越来越多的空间。我找到了清理未使用的容器和图像的建议,我这样做了。你猜怎么着?他们占用了更多的磁盘空间!

到目前为止我发现了什么:

它与.docker\machine\machines\default\disk.vmdk文件有关。它只会变大!

disk.vmdk的日志:

                            size (MB)
1. with 2 images                1,376
2. downloading a new image X    ?
3. running X as Y               2,963
4. removing Y                   2,963
5. removing X                   3,106
6. removing all the images      3,126

我到目前为止找到的唯一修复是运行docker-machine rm default,删除了VM。问题是我必须再次下载所有图像。应该有一个更好的解决方案。有人可以解释一下:

  1. 发生了什么事?
  2. 如何解决?

3 个答案:

答案 0 :(得分:2)

使用以下命令删除所有不需要的容器和图像后:

  • Docker 容器 rm
  • Docker 镜像 rm
  • Docker 容器修剪
  • Docker 镜像修剪
  • Docker 卷修剪

我看不到任何已释放的磁盘空间。重启Docker桌面后发现磁盘空间被释放了。

答案 1 :(得分:1)

也许你正在使用的图像使用卷。如果他们这样做,那么删除容器不起作用。您还必须删除卷。 为此,您必须在删除容器时指定-v标志

docker rm -v <container name or container id>

根据您的泊坞窗版本,您可以使用更多命令。 查看此SO thread了解更多信息。您可以在此SO thread

中阅读有关孤立卷的更多信息

答案 2 :(得分:0)

有些维护命令可以在较新版本的Docker上运行。它们将释放停下的容器,悬空的图像和悬空的体积所使用的空间:

docker container prune -f
docker image prune -f
docker volume prune -f
相关问题