Tomcat 7在Debian启动时失败,但继续在后台工作
当我在Docker中运行任何debian图像
sudo docker run -it debian /bin/bash
安装tomcat 7
apt-get update && apt-get install -y tomcat7
开始吧,我明白了
/etc/init.d/tomcat7 start [FAIL] Starting Tomcat servlet engine: tomcat7 failed!
但是,如果我在浏览器中打开它,我知道, 它的工作原理!
使用CLI再次检查
/etc/init.d/tomcat7 status [ ok ] Tomcat servlet engine is not running..
而现在唯一的办法就是阻止它被pid杀死。
你有没有遇到过这个问题?
是的,我以前遇到过这个问题。 Docker不是一个init系统。 sysv和initstart的初始化脚本可能需要系统具有正确的init系统或运行所需的守护程序来pipe理服务。
该脚本可能运行实际的进程,但由于缺乏初始化系统,错过了正确状态所需的pipe理位(定位进程PID,重新启动等)。
在这种情况下,最好只是作为命令运行应用程序。 请参阅官方的Tomcat映像: https : //github.com/docker-library/tomcat/blob/master/7-jre8/Dockerfile