我是Docker的新手,我有一个问题,我似乎无法找到答案。 我正在做一个Docker镜像(consol/tomcat-7.0),并且写了一个Dockerfile加载这个镜像,复制我的war文件,并将一个server.xml和独特的数据库连接细节以及默认主机复制到一个新镜像中。 如果我正在运行许多带有此映像的容器,那么让每个容器使用相同的war文件但连接到不同的数据库并在server.xml中具有不同的URL的正确方法是什么? 我目前正在用Dockerfile构建图像,每次我想要一个新的实例时都会有不同的细节,这看起来很浪费。将Tomcat参数传递给Docker
所以每次我想要一个新的实例,我运行“构建”使用这个Dockerfile:
FROM consol/tomcat-7.0:latest
MAINTAINER xxx
LABEL version="1.0"
EXPOSE 80 443
RUN mkdir /vhost/
COPY FILES /vhost/ /vhost/ # my war files - same on every instance
COPY FILES/server.xml /opt/tomcat/conf/ # my config file - different on each instance
然后运行这个新形象。
这样做的正确方法是什么?
12因子应用程序模式建议使用环境变量:请参阅http://12factor.net/config –