我有一个在Tomcat应用程序服务器内部运行的应用程序。它有许多可能会在不同环境之间改变的设置。例如,要使用的远程API的数据库凭证或主机/端口。在Docker容器中处理tomcat应用程序的配置
它们的默认值被烘焙到.war文件中。基本上,它们在web.xml中。通过参数docker run
来改变它们的最佳方法是什么?
到目前为止,我正在考虑将$CATALINA_HOME/conf
设置为一个卷,并简单地在Docker主机上设置上下文文件。也许有更好的方法?
我找不到使用环境变量来配置tomcat的方法。我必须更改应用程序本身来阅读这些变量吗?
简而言之,有什么方法可以在Docker中自定义tomcat应用程序,而无需在构建时将配置映射到映像本身?
如果很重要,我使用docker hub的官方tomcat镜像。