docker 创建tomcat镜像

Dockerfile

############################################
# version : wenbronk/jdkiu121/tomcat8
# desc : 当前版本安装的tomcat7
############################################
FROM wenbronk/jdk8u121

# 下面是一些创建者的基本信息
MAINTAINER wenbronk "wenbronk@163.com"

# 设置环境变量,所有操作都是非交互式的
ENV DEBIAN_FRONTEND noninteractive

# 添加 supervisord 的配置文件,并复制配置文件到对应目录下面。(supervisord.conf文件和Dockerfile文件在同一路径>)
COPY supervisord.conf /etc/supervisor/supervisord.conf

# 设置 tomcat 的环境变量,若有其他的环境变量需要设置,也可以在这里添加。
ENV CATALINA_HOME /var/tmp/apache-tomcat-8.0.41

# 复制 apache-tomcat-8.5.11.tar.gz 文件到镜像中(apache-tomcat-8.5.11 文件夹要和Dockerfile文件在同一路径)
ADD apache-tomcat-8.0.41.tar.gz /var/tmp

# 容器需要开放Tomcat 8080端口
EXPOSE 8080

# 执行supervisord来同时执行多个命令,使用 supervisord 的可执行路径启动服务。
CMD ["/usr/bin/supervisord"]

supervisord.conf

# 配置文件包含目录和进程
# 第一段 supervsord 配置软件本身,使用 nodaemon 参数来运行。
# 第二段包含要控制的 2 个服务。每一段包含一个服务的目录和启动这个服务的命令。

[supervisord]
nodaemon=true

[program:sshd]
command=/usr/sbin/sshd -D

[program:tomcat]
command=/bin/bash -c "exec ${CATALINA_HOME}/bin/catalina.sh run"

构建镜像

docker build -t wenbronk/jdk8u121/tomcat8

启动

docker run -d -p 9999:22 -p 8080:8080 wenbronk/jdk8u121/tomcat8
原文地址:https://www.cnblogs.com/wenbronk/p/6398414.html