我的docker映像大小为17 GB。我运行了映像并删除了Docker容器中的4GB文件夹。提交容器后,创建的新映像也为17 GB。怎么可能?
当您通过提交添加另一层时,将导致另一个层删除先前层的文件。如果运行图像,则将执行和解释所有图层。
Docker: About images, containers, and storage drivers
docker build --squash
可以帮助您减小图像尺寸,因为它合并所有层为一层,但这是实验性的。
发现逻辑:问题是,一旦我提交了一个说容量为17 GB的容器并退出它,便创建了一个大小为17 GB的新映像。即使再次运行该映像并删除其中的文件并重新提交,大小也不会改变。关键是在提交容器之前,我们必须删除所有不必要的文件并提交容器