如何在Docker基础映像中编辑文件之前先从中构建新映像

时间:2019-09-22 04:24:43

标签: docker dockerfile

我想使用之前项目的基础映像构建docker映像。它的Dockerfile如下,

FROM saji/base-project:latest
COPY Libs/*.jar /home/base-proj/lib/

但是在构建此映像之前,我想更改 saji / base-project:latest 基础映像文件路径/home/base-proj/conf/config.xml

中包含的配置文件

我可以使用Docker守护程序来做到这一点吗?

1 个答案:

答案 0 :(得分:0)

如果您的本地系统中已经有文件,只需在构建期间替换文件即可。

pickleFile = open("test.bin", 'rb')
histogram = pickle.load(pickleFile)
pickleFile.close()


for hist in histogram:

这将覆盖基本映像文件config.xml文件。

如果您没有FROM saji/base-project:latest COPY Libs/*.jar /home/base-proj/lib/ COPY config.xml /home/base-proj/conf/config.xml ,请从基本映像复制它,然后使用上面的dockerfile。

config.xml

或者,如果您只想在运行时进行更改,那么(我假设您有config.xml文件)

docker run -it --name base_container --rm saji/base-project:latest
#then copy the file
docker cp base_container:/home/base-proj/conf/config.xml  ./