几个星期前我使用这个tutorial而不使用Dockerfile构建了一个图像。
基本上,您从图像运行容器,编辑此容器,然后将其另存为新图像,退出,提交和推送。起初我的形象在某种程度上是可以接受的,但现在它以我不理解的方式成长。
例如,如果我需要编辑我的图像,我会:
docker run --name mycontainer -it from/currentimage bash
docker commit from/currentimage
docker push from/currentimage
问题是更改文件中的一行会使图像变大~250MB。我做错了什么?
从那里,我怎样才能减少那些,从我的想法,无用的层? SO上的其他答案总是使用Dockerfile或重新配置它。在我的案例中,我没有一个。
由于
答案 0 :(得分:3)
我无法告诉你为什么你的图像增长速度超出预期。您可以使用导出/导入机制来展平图层,这可能会缩小图像大小:
docker create --name foo from/currentimage
docker export foo | docker import - from/currentimage:flat
docker rm foo
docker inspect from/currentimage:flat
现在应该显示单个图层。