docker 制作tomcat9.0 镜像 并修改context.xml内容

第一步:资源准备

准备jdk 和tomcat 安装文件 jdk-8u144-linux-x64.tar.gz  apache-tomcat-9.0.39.tar.gz

第二步:编辑Dockerfile 文件

我将所有文件存在/root 目录。

docker 制作tomcat9.0 镜像 并修改context.xml内容

文件说明:context.xml 是我准备替换tomcat conf 目录下面的context.xml文件,该文件存在了数据源jndi 方面配置信息

readme.txt是一个空文件

下面开始编辑Dockerfile文件

FROM centos
MAINTAINER cgq<[email protected]>
# 将readme.txt 文件 复制到/usr/local/目录下
COPY readme.txt /usr/local/readme.txt
# 分别添加jdk 和 tomcat 压缩包 到目标目录 /usr/local/  不需要解压
ADD jdk-8u144-linux-x64.tar.gz /usr/local/
ADD apache-tomcat-9.0.39.tar.gz /usr/local/
# 安装vim 工具
RUN yum -y install vim
#定义 工作地址 env指令作用添加环境变量
ENV WORK_PATH /usr/local
WORKDIR $WORK_PATH

#定义要替换的context.xml文件名
ENV CONTEXT_FILE_NAME context.xml

#删除原tomct里面的context.xml
RUN rm $WORK_PATH/apache-tomcat-9.0.39/conf/$CONTEXT_FILE_NAME
#复制文件context.xml 到tomcat目录下
COPY  ./$CONTEXT_FILE_NAME $WORK_PATH/apache-tomcat-9.0.39/conf/

#配置 jdk环境变量
ENV JAVA_HOME /usr/local/jdk1.8.0_144
ENV JRE_HOME /usr/local/jdk1.8.0_144/jre
ENV CLASS_PATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
ENV CATALINA_HOME /usr/local/apache-tomcat-9.0.39
ENV CATALINA_BASH /usr/local/apache-tomcat-9.0.39
ENV  PATH $PATH:$JAVA_HOME/bin:$JRE_HOME/bin

#暴露tomcat 端口
EXPOSE 8080
# 指定 启动命令和日志输出命
CMD  /usr/local/apache-tomcat-9.0.39/bin/startup.sh && tail -F /usr/local/apache-tomcat-9.0.39/logs/catalina.out
 

说明:执行过程中有可能会慢,如果你有自己局域网基础镜像地址 将FROM centos 修改为 FROM  你自己的地址

第三步:制作tomcat镜像

确保服务器已经安装了docker

docker --version 查看。

制作镜像 docker build -t  tomcat9.0.39:v1.0 .

docker 制作tomcat9.0 镜像 并修改context.xml内容

第四步:查看镜像

docker images

docker 制作tomcat9.0 镜像 并修改context.xml内容

第五步:启动

docker 制作tomcat9.0 镜像 并修改context.xml内容

查看 容器列表

docker 制作tomcat9.0 镜像 并修改context.xml内容

第六步:查看tomcat 目录下context.xml文件内容

docker 制作tomcat9.0 镜像 并修改context.xml内容

通过 cat context.xml 可以看到里面的内容已经是我们事前准备的context.xml内容。

输入exit 退出。

通过浏览器 ip地址:8090 可以查看你部署的应用