docker创建tomcat容器不能启动

ckkingdomliu 2016-11-17 17:06:41

大家好

我pull了一个centos的镜像,然后创建了一个容器并在容器里安装了jdk和tomcat,然后用这个容器commit了一个镜像

现在我新建了一个dockerfile

[root@localhost tomcat]# cat dockerfile

# This is a comment
FROM tomcat_lwc
ENV JAVA_HOME /usr/local/jdk
ENV PATH $JAVA_HOME/bin:$PATH
ENV CLASSPATH .:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENTRYPOINT /usr/local/apache-tomcat-6.0.48/bin/startup.sh

然后build

[root@localhost tomcat]# docker build -t="tomcat/tomcat:v1" .
Sending build context to Docker daemon 2.048 kB
Step 1 : FROM tomcat_lwc
 ---> 22e384c39e73
Step 2 : ENV JAVA_HOME /usr/local/jdk
 ---> Running in e16bcd9f9294
 ---> e54c42d6e035
Removing intermediate container e16bcd9f9294
Step 3 : ENV PATH $JAVA_HOME/bin:$PATH
 ---> Running in 6d1c952f3cbe
 ---> 3636c587ff16
Removing intermediate container 6d1c952f3cbe
Step 4 : ENV CLASSPATH .:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
 ---> Running in a20cefe5c560
 ---> 2bdb6503b4b2
Removing intermediate container a20cefe5c560
Step 5 : ENTRYPOINT /usr/local/apache-tomcat-6.0.48/bin/startup.sh
 ---> Running in 099551e8b854
 ---> 0595dc909e8e
Removing intermediate container 099551e8b854
Successfully built 0595dc909e8e

成功后,run一个新的容器

[root@localhost tomcat]# docker run -d -p 800:8080 --name tomcat1 tomcat/tomcat:v1 
f741de1139edd26d4760a9e601a3b3658689e3bca5f89e56eadc1a76b2923e68
[root@localhost tomcat]# docker ps -a
\CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                       PORTS               NAMES
f741de1139ed        tomcat/tomcat:v1    "/bin/sh -c /usr/loca"   5 seconds ago       Exited (0) 4 seconds ago                         tomcat1
47520f1d12d2        centos              "/bin/bash"              2 days ago          Exited (127) 3 minutes ago                       focused_ramanujan


发现这个容器没启动,而且就算docker start ID,也是一样,容器的状态一直都是Exited

我是初学docker的,都是按照网上的教程来做,不知道哪里出错了,求指点

回帖列表
shihuan830619 2017-04-07 15:46:40
ENTRYPOINT 这个命令不对吧
568726695 2017-03-30 13:35:41
你把 -d 换成 -it 启动完就直接进入容器了,然后你在看log,或看tomcat有没有启动成功
qq_589c0b0d3768c 2017-02-09 14:26:37
docker exec -it pid,进去之后手动启动看看报啥错
sodagreen 2017-01-03 16:06:59
 -p 800:8080  你的端口映射有问题吧?试下修改然后再启动
jeson 2016-11-28 10:13:14


启动不了有很多原因,比如java环境变量是否设置成功,可以先用docker ps看看有没有容器运行
1/ 1
蝉知2.0