2016-03-17 134 views
0

我们有一场需要配置文件才能工作的战争。 我们想要dockerize它。目前,我们正在做以下几点:将config.txt添加到码头集装箱

FROM tomcat:8.0 
COPY apps/test.war /usr/local/tomcat/webapps/ 
COPY conf/ /config/ 

我们的集装箱正在失去泊坞窗的优势,因为它依赖于CONFIGFILE的。所以当我们想为其他目的执行.war时,我们必须重新创建这个图像,这不是一个好方法。

是否可以将配置文件作为参数提供而不将其作为卷进行挂载?因为我们不想在我们的本地机器上配置。什么可能是一个解决方案?

回答

0

您可以将它作为ENV传递,但我没有看到您丢失了Docker的优势。 Docker基本上都是关于不必要的临时容器。理想情况下,您希望为每个新的应用程序版本创建一个新图像。

+0

.war正在使用包含参数的.txt文件。它没有使用环境变量 – lova

+0

你可以有一个脚本将'ENV'的内容写入'.war'然后使用它。这是我最初的想法。 – DaKnOb