Docker实现运行tomcat并部署项目war包

之前写的有点乱,现在再来整理一下docker的简单部署运行

借鉴博客:https://blog.csdn.net/qq_32351227/article/details/78673591

一、docker的安装,以及配置开机自启docker服务就不说了,网上一大把,我也做了另一篇博客笔记

#。。。

二、docker下载tomcat镜像并运行

  2.1:搜索tomcat镜像

docker search tomcat 

  

  2.2:根据搜索出来的列表下载tomcat

#下载命令
docker pull tomcat

   2.3:启动tomcat:

#解释一下,-d表示后台运行,-p端口映射,前面的8088是外围访问端口(也就是本机ip对外开放的端口),后面8080是docker容器内部的端口

 docker run -d -p 8088:8080 tomcat

  

  tomcat启动成功图:

  

  浏览器访问服务器中docker中的tomcat成功图:

 》》》》》》》》》》》》接下来,丢一个war进到docker的tomcat里,再用浏览器访问此war包项目》》》》》》》》》》》》》》》》》》》》》》》

 新建一个文件夹testJavaProject,用来专门放测试项目的war,jar包

   查看 正在运行容器:

docker ps

    

    进入docker里面的tomcat容器,需要容器ID,所以上面要查看正在运行的容器tomcat

docker exec -it 9fccf0236619 /bin/bash

    现在目录已经在tomcat容器里面了:不知道为什么在tomcat容器里面不能用ll查看文件列表命令,只能用ls了,ls命令还是可以的

  啊西吧,上传命令rz也不能用了,所以只能在刚才丢到testJavaProject目录中的war包,复制到tomcat容器的webapps下,如下图

  (进了tomcat容器,肯定要退出啊,退出docker中的tomcat容器命令:exit)

  上面那个博客是真他妈放屁,根本没必要进tomcat容器里面,我还以为要在容器里面操作把test01.war复制到tomcat容器的webapps目录下,妈的在容器里面根本不能运行docker xxx命令。所以要退出容器,在服务器正常目录下运行docker命令,把我的test01.war包复制到docker的tomcat容器中的webapss目录下。

  复制war包到tomcat容器中命令如下:

#解释一下:docker cp xxx.war包路径 容器ID:/要复制过去的目录路径
docker cp /usr/local/testJavaProject/test01.war 9fccf0236619:/usr/local/tomcat/webapps

  成功图如下:

   退出容器后执行:重启容器

docker restart [container name]

  但我发现,我没有重启的时候去浏览器打开页面,居然打开了,他妈居然打开了,难道tomcat是自动发布的war包吗?

 

  原来tomcat在运行状态下是真的自动解压war,由于只是写了简单的静态页面,所以不用重启tomcat。注意:一般情况下还是要重启的,因为这只是个测试项目并没有写后端java代码,如果java代码有修改,tomcat是必须要重启的。

2018年11月14日11:20:4

猜你喜欢

转载自www.cnblogs.com/spll/p/9957769.html
今日推荐