如何更改docker图像的开始

时间:2018-01-18 12:12:53

标签: docker

当我启动容器时,我有一个以默认配置开头的SOLR图像。 我想通过引用不同的配置文件来更改SOLR在容器中启动的方式。当然,我仍然想要使用我从一开始就拥有的原始图像。

这样做的最佳做法是什么? 如果我使用引用原始图像的docker文件,它将使用默认值启动它,因为没有脚本被修改。

我还想过在我的图像上提交我的新配置文件,但是仍然没有改变起始脚本。 有人可以指导我做最好的练习吗? 在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

容器的启动始终由ENTRYPOINT& CMD。在这种情况下,如果您想覆盖它,您可以创建自己的脚本&在CMD& ENTRYPOINT定义了一个执行CMD的空环境,而且它会覆盖Dockerfile中的先前ENTRYPOINT(您也可以提供不同的ENTRYPOINT脚本)。您可以在Dockerfile中执行以下操作 -

FROM solr:latest
...................
...................

COPY your-data /container-data
ENTRYPOINT ["/usr/bin/env"]
CMD /run.sh

您可以使用COPY&定义要在run.sh中执行的操作,run.sh是您自己的脚本,您希望在容器启动时执行该脚本。