第一次使用docker启动时,Tomcat server.xml不起作用

时间:2018-01-31 13:08:41

标签: tomcat docker server.xml

FROM tomcat:8.5.27-jre8-alpine

ADD server.xml /usr/local/tomcat/conf/server.xml

ADD app.war /usr/local/tomcat/webapps/

CMD ["catalina.sh", "run"]

这是我的Dockerfile。我希望我的自定义server.xml可以在第一次使用" catalina.sh run"启动docker容器时工作,但不是。

我必须停止容器并重新启动它,然后tomcat重新加载server.xml并且它可以工作。

有没有人以前遇到过这个或者知道这里的问题是什么?

我期望在server.xml中进行的更改如下:

 <Host name="localhost"  appBase="webapps"
                  unpackWARs="true" autoDeploy="true" deployOnStartup="true">

                <!-- SingleSignOn valve, share authentication between web applications
                     Documentation at: /docs/config/valve.html -->
                <!--
                <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
                -->

                <!-- Access log processes all example.
                     Documentation at: /docs/config/valve.html
                     Note: The pattern used is equivalent to using pattern="common" -->
                <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
                       prefix="localhost_access_log" suffix=".txt"
                       pattern="%h %l %u %t &quot;%r&quot; %s %b" />
                <Context path="" docBase="myapp" reloadable="true"></Context>
            </Host>

使myapp成为根路径&#34; /&#34;。

1 个答案:

答案 0 :(得分:0)

您可以使用COPY server.xml /usr/local/tomcat/conf/server.xml代替ADD server.xml /usr/local/tomcat/conf/server.xml