Docker 部署war包项目 您所在的位置:网站首页 war包外部配置文件 Docker 部署war包项目

Docker 部署war包项目

2023-07-15 15:44| 来源: 网络整理| 查看: 265

Docker 部署war包项目 精选 原创

Keep__Studying 2020-02-05 16:09:45 博主文章分类:Docker & K8S ©著作权

文章标签 tomcat war 包项目 docker 容器 文章分类 运维

©著作权归作者所有:来自51CTO博客作者Keep__Studying的原创作品,请联系作者获取转载授权,否则将追究法律责任 部署原理

使用Docker部署war项目,必须要用容器,我们就用tomcact容器,其实都是将war包丢到tomcat的webapps目录下,tomcat启动的情况下会自动解压war包。

部署方法

1.在Docker中安装tomcat容器的镜像,然后把war包丢到tomcat镜像下webapps中即可。但是如果tomcat关闭了,其webapps下的包就会消失。 2.利用挂载,还是安装tomcat容器的镜像,但是不把war包丢到tomcat下的webapps中,直接创建一个外部文件夹,将这个外部文件夹跟wabapps关联,这样把war丢到新建的文件夹中,tomcat的webapps也能读取到这个war包,这就是挂载。

操作环境:

1.已关闭防火墙,安全性 2.已经安装docker容器 3.宿主机centos 7系统 4.项目已打好war包 5.tomcat相关配置文件已准备好

部署过程 1.搜索tomcat镜像

docker search tomcat

2.下载tomcat镜像

docker pull tomcat

3.查看镜像

docker images

4.启动容器

docker run -d -p 8088:8080 tomcat &

排坑过程 如果发现网页无法访问,返回404

原因:下载的tomcat镜像有问题,容器中的webapps文件夹为空,故无法访问 尝试以下步骤: docker ps

docker exec -it 8126cd702e4b /bin/bash #进入容器 rm -rf webapps #删除空文件webapps mv webapps.dist webapps #更换webapps文件

网页验证

部署war包项目 第一种方法:war包拷贝到容器中 1.把war包和配置文件拷贝到宿主机

2.拷贝到docker容器里面

docker cp admin.war 834273c974f2:/usr/local/tomcat/webapps docker cp context.xml 834273c974f2:/usr/local/tomcat/conf

3.重启容器

docker restart 2d9a7cdacc8b

4.网页验证:

第二种方法:挂载共享目录 1. 创建挂载目录

mkdir /root/warPackage

2.上传war包到 /root/warPackage 3. 挂载

docker run -it -v /root/warPackage/:/usr/local/tomcat/webapps/ /bin/bash (-v (挂载) 虚拟机目录 容器目录)

4.查看挂载

宿主机查看: cd /root/warPackage ls

容器内查看: docker exec -it ecf6b6baa517 /bin/bash cd webapps ls

若此时网页无法访问,可尝试下面解决方法:

docker exec -it ecf6b6baa517 /bin/bash #进入容器 cd webapps mv webapps webapps1 #重命名,目前容器运行,无法删除,只能改名字 mv webapps.dist webapps #替换webapps文件 exit #退出容器 docker run -it -v /root/warPackage/:/usr/local/tomcat/webapps/ /bin/bash #重新挂载

注意:

1.新下载的tomcat镜像若启动无法访问,要参考排坑过程,若正常,可忽略。 2.挂载的war包路径可自定义,若无法访问,也可参考上面方法。 3.这里介绍的2种方法,可以根据公司需要,自行选择使用。

打赏 收藏 评论 分享 举报

上一篇:华为云服务器安装 Docker 容器

下一篇:Docker 部署 nginx + tomcat



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有