Docker中构建tomcat镜像并同时部署war

  1. 首先编写Dockerfile
FROM tomcat:9.0.10-jre8
MAINTAINER "zxc <zhaoxiangchun@yunionyun.cn>"
USER root
ENV TZ Asia/Shanghai
ENV LANG C.UTF-8

ADD ./target/zhTask.war /usr/local/tomcat/webapps/
#COPY ./config/server.xml /usr/local/tomcat/conf/server.xml
#RUN rm -rf /usr/local/tomcat/webapps/cmdb.war
#RUN rm -r /usr/local/tomcat/webapps/ROOT/
#RUN mv /usr/local/tomcat/webapps/cmdb.war /usr/local/tomcat/webapps/ROOT.war
#RUN unzip -oq /usr/local/tomcat/webapps/ROOT.war -d /usr/local/tomcat/webapps/ROOT

这里需要注意的点:

  • 在本地目录中新建target目录并上传上需要部署的war包.在Dockerfile中并没有 RUN java/tomcat相关的环境变量的命令,因为在tomcat运行的时候,脚本会有相关的创建环境变量的命令
  • FROM 的基础镜像:tomcat/jre版本
  1. 执行命令构建镜像命令
docker build -t zhtask:latest .

注意命令最后的小点

3.运行镜像

 docker run --rm -v /build/config/appcore.properties:/usr/local/tomcat/conf/appcore.properties -p 8080:8080  zhtask

-v 后是指定配置文件的目录,挂载到tomcat的安装目录下的conf下,==这里也是镜像容器的全路径名(含文件名),如果不指定文件名的话,conf目录就会被指定的文件路径覆盖,我在实践的过程中,很多都是由于挂载文件路径引起的

**至此一次tomcat镜像,同时部署war包就完成了**

这次我是将所要的部署的war包放置在了镜像中,运行镜像时,只需要指定war包中的配置文件就可以(需要代码中配合完成).
也可以在docker run时 -v 指定要部署的war包

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值