我运行启动tomcat8服务器的docker图像,但它不启动

我有我从docker文件创build的docker图像。 当我运行镜像时,它能够运行tomcat服务器,然后命令提示符回来。 这意味着过程终止,我认为容器停止。 所以当我看到http:// localhost:8080时,不会出现tomcat页面。 所以我无法find真正的问题。 我实际上是试图构build自定义的java8,tomcat8和maven作为环境,我想部署我的maven项目在该tomcat服务器。 贝娄是Dockerfile来创build图像

FROM scratch FROM ubuntu:16.04 RUN mkdir /opt/java8 RUN mkdir /opt/tomcat8 RUN mkdir /opt/maven3 ENV JAVA_HOME /opt/java8 ENV CATALINA_HOME /opt/tomcat8 ENV M2_HOME /opt/maven3 ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin:$M2_HOME/bin ADD jdk1.8.0_112 /opt/java8 ADD apache-tomcat-8.0.38 /opt/tomcat8 ADD apache-maven-3.3.9 /opt/maven3 EXPOSE 8080 CMD ["startup.sh", "run"] 

我把三个文件夹的Java,Tomcat,Maven附近的Docker文件,所以这些被添加。

现在当我build立图像并运行图像时,会出现波纹pipe日志。

 root@dhavalbhoot:/home/veni/Documents/dhaval_bhoot/docker_images/tomcat1# docker run -it -p 8080:8080 dhaval/tomcat:8.0.38 

输出:

 Using CATALINA_BASE: /opt/tomcat8 Using CATALINA_HOME: /opt/tomcat8 Using CATALINA_TMPDIR: /opt/tomcat8/temp Using JRE_HOME: /opt/java8 Using CLASSPATH: \#/opt/tomcat8/bin/bootstrap.jar:/opt/tomcat8/bin/tomcat-juli.jar Tomcat started. root@dhavalbhoot:/home/veni/Documents/dhaval_bhoot/docker_images/tomcat1# 

这样的提示回来,我检查浏览器http:// localhost:8080 tomcat页面不出现所以帮助我解决问题。

一个类似docker的官方tomcat镜像(8.0.40)运行:

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

用catalina.sh在前台启动tomcat :进程不会立即退出。
如果你的tomcat安装包含了这个脚本,你应该使用它或startup.sh

或者直接运行一个tomcat镜像进行testing:

 $ docker run -it --rm -p 8080:8080 tomcat:8.0 

您可以通过在浏览器中访问http:// container-ip:8080来testing它