Docker容器Tomcat部署war包
在docker容器中使用tomcat部署war包主要包括四个步骤,创建tomcat容器、上传war包到容器、重启容器、访问应用。
1.创建tomcat容器
使用docker run -d --name cmdtomcat -p 8080:8080 tomcat命令启动了tomcat容器,在浏览器输入http://localhost:8080/可以显示tomcat配置页面。使用docker ps -a可以看到cmdtomcat的容器。
使用docker exec -it 6ba4ccc864bd /bin/bash命令交互式的进入tomcat容器,可以看到webapps目录以及webapps目录下的文件。
2.上传war包到tomcat容器
war包是第九章打包部署用的包,为了方便演示,这里将war包放在了G:\dockerwar目录下。docker中也可以使用cp命令完成和宿主机的文件拷贝。
Docker cp G:\dockerwar\SpringBootSwagger-0.0.1-SNAPSHOT.war cmdtomcat:/usr/local/tomcat/webapps
3.重启容器
使用docker restart cmdtomcat命令重启容器,然后进入容器可以看到上面拷贝进去的SpringBootSwagger-0.0.1-SNAPSHOT.war包。
4.访问应用
浏览器输入http://localhost:8080/SpringBootSwagger-0.0.1-SNAPSHOT/swagger-ui.html即可正常显示页面。
5.以挂载方式启动
上述执行有个弊端就是容器重启后项目就会不再了,我们可以以挂载的方式启动。
docker run -d -v G:/dockerwar/SpringBootSwagger-0.0.1-SNAPSHOT.war:/usr/local/tomcat/webapps/SpringBootSwagger-0.0.1-SNAPSHOT.war --name cmdtomcat2 -p 8081:8080 tomcat
如上图所示,进入cmdtomcat2容器,可以看到SpringBootSwagger-0.0.1-SNAPSHOT.war已在webapps目录下。在浏览器输入http://localhost:8081/SpringBootSwagger-0.0.1-SNAPSHOT/swagger-ui.html也是正常显示页面。
6.小结
这里只是演示了docker部署war的基本用法,对于在tomcat容器中可能会访问数据库的部分还需要优化,还需要将数据库部分容器化然后与tomcat容器关联才能访问数据库。使用dockerfile部署时遇到使用COPY、ADD都无法将war拷贝到tomcat容器的webapps目录下,使用VOLUME能挂载卷到webapps中,但重启tomcat容器并未将war解压,后续还需优化。
相关文章
- docker探索-Win10 Docker 安装使用(一)
- 【Docker】docker安装redis
- 【Docker】docker的安装和常用命令
- Docker - docker in docker(dind)
- Tomcat详解(三)——tomcat多实例
- Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
- 【已】Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
- 004-docker命令-docker资源配置-Docker容器CPU、memory资源限制
- 78.第十七章 企业级容器技术docker -- Docker 镜像制作和管理(六)
- 【云原生之Docker实战】使用docker部署mkdocs项目文档工具
- 【云原生之Docker实战】使用docker部署yesplaymusic个人音乐播放器
- 【云原生之Docker实战】使用docker部署webterminal堡垒机
- 【云原生之Docker实战】在docker环境下部署DooTask任务管理工具
- 【云原生之Docker实战】使用docker部署家庭DOS游戏服务器
- 【云原生之Docker实战】使用docker部署o2oa企业OA平台
- 【云原生之Docker实战】使用docker部署kodbox私有云
- Docker----执行docker pull 下载镜像时报dial tcp: lookup registry-1.docker.io on 192.168.1.1:53: no such host错
- Docker技术----docker-compose实战----快速搭建WordPress博客系统
- Docker 部署 Tomcat