自定义 Tomcat 镜像
1. 编写 Dockerfile 文件
vim Dockerfile
FROM centos7
MAINTAINER song@qq.com
#拷贝文件,(readme.txt 和 *.tar.gz )文件必须与 Dockerfile 在同一个目录下
COPY readme.txt /usr/local/readme.txt
# 拷贝文件到镜像中,且会自动解压缩
ADD jdk-8u171-linux-x64.tar.gz /usr/local
ADD apache-tomcat-8.5.30.tar.gz /usr/local
#配置环境变量
ENV JAVA_HOME /usr/local/jdk1.8.0_171
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV CATALINA_HOME /usr/local/apache-tomcat-8.5.30
ENV CATALINA_BASH /usr/local/apache-tomcat-8.5.30
ENV PATH $PATH:JAVA_HOME/bin:$CATALINA_HOME/lib:$CATALINA_HOME/bin
RUN yum -y install vim wget curl unzip iproute net-tools && \
yum clean all && \
rm -rf /var/cache/yum/*
ENV MYPATH /usr/local
WORKDIR $MYPATH
EXPOSE 8080
# CMD ["catalina.sh","run"]
CMD /usr/local/apache-tomcat-8.5.30/bin/startup.sh && tail -F /usr/local/apache-tomcat-8.5.30/bin/logs/catalina.out
2. 使用 docker build 创建镜像
docker build -f Dockerfile -t harbor.test.com/test/tomcat:v1.0 .
3. 使用 docker run 运行容器
docker run \
--name mytomcat \
-p 8080:8080 \
-v /my/tomcat/webapps:/usr/local/apache-tomcat-8.5.30/webapps \
-v /my/tomcat/webapps/tomcatlogs/:/usr/local/apache-tomcat-8.5.30/logs \
-d harbor.test.com/test/tomcat:v1.0
4. 测试,可以进入容器查看,也可以通过浏览器查看
docker exec -it mytomcat /bin/bash
5. 发布项目
cd /my/tomcat/webapps
mkdir WEB-INF
cd WEB-INF