如何在docker中后台运行tomcat



我想在后台运行Tomcat。因为我想在tomcat执行之后额外运行脚本。

请参阅打击。

[Dockerfile]

ENTRYPOINT entrypoint.sh

[entrypoint.sh]

${TOMCAT_HOME}/bin/catalina.sh run # tomcat start
echo "Hello" # I want to execute this command line. (echo "Hello" is a sample example.)

我想执行echo "Hello"

但是,由于Tomcat运行Foreground,因此该命令不会运行。

  • 我知道用catalina.sh start运行tomcat会关闭容器

有没有办法在后台运行tomcat

catalina.shstartrun命令工作相似,不同之处在于start分叉,而run不分叉。

然而,由于每当主脚本退出时,Docker容器就会停止,因此使用会更好

# Start process in a subshell
(${TOMCAT_HOME}/bin/catalina.sh run)&
PID=$!
# Do other stuff
echo "Hello world!"
# Wait for server to terminate
wait $PID

最新更新