首页 > 解决方案 > 为什么docker容器启动成功时tomcat没有启动?

问题描述

tomcate 和 jdk 从他们的官方网站下载

以下是我的 Dockerfile:

FROM centos
MAINTAINER jachen<1862457@qq.com>
COPY readme.txt /usr/local/readme.txt

ADD jdk-8u261-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-9.0.22.tar.gz /usr/local/

#RUN yum -y install vim

ENV MYPATH /usr/local
WORKDIR $MYPATH

ENV JAVA_HOME /usr/local/jdk1.8.0_261
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

ENV CATALINA_HOME /usr/local/apache-tomcat-9.0.22
ENV CATALINA_BASH /usr/local/apache-tomcat-9.0.22

ENV PATH $PATH:$JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin

EXPOSE 8080

CMD ["/usr/local/apache-tomcat-9.0.22/bin/catalina.sh" "run"]

构建命令:

docker build -t diytomcat3:0.3 .

启动命令:

docker run -it -d diytomcat3:0.3 /bin/bash

然后进入码头:

[root@localhost ~]# docker exec -it cb4aebe4a834 /bin/bash
[root@cb4aebe4a834 local]# pwd
/usr/local
[root@cb4aebe4a834 local]# curl localhost:8080
curl: (7) Failed to connect to localhost port 8080: Connection refused
[root@cb4aebe4a834 local]# 

这意味着 tomcat luanch 失败了。

但是当运行 catalina.sh 时,tomcat 可以启动成功:

[root@cb4aebe4a834 local]# catalina.sh run
Using CATALINA_BASE:   /usr/local/apache-tomcat-9.0.22
Using CATALINA_HOME:   /usr/local/apache-tomcat-9.0.22
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-9.0.22/temp
Using JRE_HOME:        /usr/local/jdk1.8.0_261
Using CLASSPATH:       /usr/local/apache-tomcat-9.0.22/bin/bootstrap.jar:/usr/local/apache-tomcat-9.0.22/bin/tomcat-juli.jar
24-Aug-2020 13:41:10.011 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name:   Apache Tomcat/9.0.22
.....
24-Aug-2020 13:41:12.668 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]
24-Aug-2020 13:41:12.676 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [1,625] milliseconds

我试图获取一些日志,但一无所获:

[root@localhost ~]# docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
cb4aebe4a834        diytomcat3:0.3      "/bin/bash"         9 minutes ago       Up 9 minutes        8080/tcp            happy_thompson
[root@localhost ~]# docker logs cb4aebe4a834
[root@localhost ~]# 

标签: dockertomcatcontainers

解决方案


推荐阅读