如何删除Docker容器内已删除的文件?

时间:2019-10-21 19:53:54

标签: docker docker-compose docker-machine docker-build nvidia-docker

我的docker映像大小为17 GB。我运行了映像并删除了Docker容器中的4GB文件夹。提交容器后,创建的新映像也为17 GB。怎么可能?

2 个答案:

答案 0 :(得分:5)

当您通过提交添加另一层时,将导致一个附加层,该层将删除先前层的文件。如果您运行图像,则将执行并解释所有图层。

Docker: About images, containers, and storage drivers

docker build --squash可以帮助您减小图像尺寸,因为它可以将所有图层合并,但是这是实验性的。

答案 1 :(得分:0)

找到了逻辑:问题是,一旦我提交了一个容量为17 GB的容器并退出它,便创建了一个容量为17 GB的新映像。即使再次运行该映像并删除其中的文件并重新提交,大小也不会改变。关键是在提交容器之前,我们必须删除所有不必要的文件并提交容器