Prokgate从基本映像更改为“子”映像,Docker

问题描述 投票:1回答:2

我正在使用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的新手,所以这可能吗?如果没有,您将如何一口气修改相同更改的几张图像?那可能吗?谢谢。

linux docker parent-child propagation image-file
2个回答
3
投票

正在运行的Docker容器与它们以“实例类型”类型从中创建的映像相关。意味着您不能“宣传”预期方式的更改。您最好使用Dockerfile描述如何构建docker映像,而不是手动修改正在运行的容器。


1
投票

编号

© www.soinside.com 2019 - 2024. All rights reserved.