我正在使用docker,我想知道是否有可能将更改提交给基本图像的“子”图像。希望以下动作序列可以更清楚地了解我的意思。
docker run -i -t baseimage // start up baseimage
<detach while leaving baseimage running>
docker commit <baseimage id> childimage // new image created from baseimage
docker run -i -t baseimage // start up baseimage
touch test.txt // make some small change
<detach while leaving baseimage running>
docker commit <baseimage id> baseimage // save base image
docker run -i -t childimage // start up childimage
ls test.text // test.txt isn't there
之所以要这样做,是因为我有一个基础图像,我从中创建了几个子图像。只有创建了子映像后,我才意识到我需要在所有映像中都安装Java。对我而言,以某种方式将Java安装到基本映像并将其传播给“子级”,而不是遍历每个子级映像并安装java,会容易得多。
我承认我是Docker的新手,所以这可能吗?如果没有,您将如何一口气修改相同更改的几张图像?那可能吗?谢谢。
正在运行的Docker容器与它们以“实例类型”类型从中创建的映像相关。意味着您不能“宣传”预期方式的更改。您最好使用Dockerfile描述如何构建docker映像,而不是手动修改正在运行的容器。
编号