一、准备搭建环境
1. Linux 版JDK ,示例中路径与Dockerfile 文件平级 传送门
2. Linux 版Tomcat,示例中路径与Dockerfile 文件平级 传送门
3. 准备一个简单的web工程测试时使用 ,示例中项目绝对路径 /usr/local/tomcat/webapps/test 传送门
自己宿主机新建个tomcat目录,解压测试web项目到webapps
二、创建并编辑 Dockerfile 内容
1. Dcoekrfile 内容
FROM centos
#作者
MAINTAINER qizhi [email protected]
#拷贝tomcat jdk 到镜像并解压
ADD apache-tomcat-8.5.30.tar.gz /usr/local/tomcat
ADD jdk-8u202-linux-x64.tar.gz /usr/local/jdk
#定义交互时登录路径
ENV MYPATH /usr/local
WORKDIR MYPATH
#配置jdk 和tomcat环境变量
ENV JAVA_HOME /usr/local/jdk/jdk1.8.0_202
ENV CATALINA_HOME /usr/local/tomcat/apache-tomcat-8.5.30
ENV CATALINA_BASE /usr/local/tomcat/apache-tomcat-8.5.30
ENV CLASSPATHJAVA_HOME/lib/dt.jar:JAVA_HOME/lib/tools.jar
ENV PATHPATH:JAVA_HOME/bin:CATALINA_HOME/lib:$CATALINA_HOME/bin
#设置暴露的端口
EXPOSE 8080
#运行tomcat
CMD /usr/local/tomcat/apache-tomcat-8.5.30/bin/startup.sh && tail -f /usr/local/tomcat/apache-tomcat-8.5.30/logs/catalina.out
三、使用build命令构建镜像
docker build -f Dockerfile -t qizhi/tomcat:1.5 .
四、运行镜像
1. 运行镜像
docker run -d -p 8080:8080 --name mytomcat1.5
-v /usr/local/tomcat/logs:/usr/local/tomcat/apache-tomcat-8.5.30/logs/
-v /usr/local/tomcat/webapps:/usr/local/tomcat/apache-tomcat-8.5.30/webapps/
qizhi/tomcat:1.5
注: 注意空格和换行,两个 -v 参数为挂载目录,四行命令作为一行执行,不能分开运行
第一个-v 把容器中tomcat的日志挂载到宿主机
第二个把我们准备简单的web项目挂载到容器中tomcat的webapps 工作空间目录,我们添加web项目时部署到宿主机文件路径即可
2. 查看容器运行结果
3. 测试项目简单web页面