如何在Docker容器中部署war包项目?相信大部分人都还不知道怎么安装部署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/warPackage3. 挂载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容器中部署war包项目的方法了吗?

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐