我是 docker 的新手,我尝试遵循一些关于使用 DOCKER 高效创建多个 TOMCAT 实例的教程和文档,但我无法通过 docker run 命令运行服务。
我有一个包含以下代码的 docker 文件
FROM ubuntu:precise
MAINTAINER Quinten Krijger < qkrijger [at] gmail {dot} com>
RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list
RUN apt-get update && apt-get -y install python-software-properties
RUN add-apt-repository ppa:webupd8team/java
RUN apt-get update && apt-get -y upgrade
RUN echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections
RUN apt-get -y install oracle-java7-installer && apt-get clean
RUN update-alternatives --display java
RUN echo "JAVA_HOME=/usr/lib/jvm/java-7-oracle" >> /etc/environment
当我使用命令构建时
docker build -t quintenk/jdk7-oracle .
说明编译成功
在另一个 dockerfile 中,我尝试基于它创建创建其他图像
我在不同的路径中有另一个 docker,使用以下命令
FROM quintenk/jdk7-oracle
MAINTAINER Quinten Krijger "qkrijger@gmail.com"
RUN apt-get -y install tomcat7
RUN echo "JAVA_HOME=/usr/lib/jvm/java-7-oracle" >> /etc/default/tomcat7
EXPOSE 8080
CMD service tomcat7 start && tail -f /var/lib/tomcat7/logs/catalina.out
我使用下面的命令来运行docker文件
docker run -d quintenk/tomcat7
但是显示为tomcat实例失败
* Starting Tomcat servlet engine tomcat7
...fail!
如果我发出指令
docker ps
我的机器上也没有实例在运行
我显然做错了什么,我在我的 OSX 上得到了这个行为
最佳答案
为了测试,您可以使用 CMD ["bash"].
创建一个 Dockerfile
启动容器然后使用命令登录到容器
docker -it exec container_name bash
然后启动tomcat,查看tomcat日志
关于java - Dockerized tomcat 未启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34652228/