docker创建tomcat容器不能启动
2016-11-17 17:06:41
刘先生
  • 访问次数: 2
  • 注册日期: 2016-11-17
  • 最后登录: 2016-11-17

大家好

我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的,都是按照网上的教程来做,不知道哪里出错了,求指点

沙发
2016-11-28 10:13:14
jeson
  • 访问次数: 2
  • 注册日期: 2016-11-28
  • 最后登录: 2016-11-28

启动不了有很多原因,比如java环境变量是否设置成功,可以先用docker ps看看有没有容器运行
板凳
2017-01-03 16:06:59
wujinpei
  • 访问次数: 2
  • 注册日期: 2017-01-03
  • 最后登录: 2017-01-03
 -p 800:8080  你的端口映射有问题吧?试下修改然后再启动
#3
2017-02-09 14:26:37
重回潇洒家园
  • 访问次数: 2
  • 注册日期: 2017-02-09
  • 最后登录: 2017-02-09
docker exec -it pid,进去之后手动启动看看报啥错
#4
2017-03-30 13:35:41
  • 访问次数: 2
  • 注册日期: 2017-03-30
  • 最后登录: 2017-03-30
你把 -d 换成 -it 启动完就直接进入容器了,然后你在看log,或看tomcat有没有启动成功
#5
2017-04-07 15:46:40
shihuan
  • 访问次数: 11
  • 注册日期: 2016-09-04
  • 最后登录: 2017-04-10
ENTRYPOINT 这个命令不对吧
1/1