Docker---(4)Docker 部署spring web项目
2018-01-15 18:58
239 查看
此文介绍,如何将一个项目spring web发布到docker中的tomcat容器中,服务器为阿里云服务器。
[b]1.项目打包为war包[/b]
[b]2.启动一个tomcat容器,具体如下:[/b]
关键命令:docker run --name tomcat2 -d -p 8083:8080 tomcat:latest
这里,将宿主的8083端口映射到tomcat容器的8080端口,启动后别名为tomcat2。
(此时,访问ip:8083就可以访问到此tomcat了)
如何上传本地文件到服务器,点击这里
91ebdd8d5c652b465cc15f86cdc1c41167e211aaae9f1e42ab1032e7db8d3854,为此容器的id的全称,如果不知道,获取命令为:
docker inspect -f '{{.Id}}' tomcat2
[b]1.项目打包为war包[/b]
[b]2.启动一个tomcat容器,具体如下:[/b]
root@iZuf6axmuekh1n14dwcufmZ:~# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES f3b0f76293f9 tomcat:latest "catalina.sh run" 8 hours ago Up About an hour 0.0.0.0:8080->8080/tcp tomcat1 4ce1634ce6f1 mysql:latest "docker-entrypoint..." 4 weeks ago Up 4 weeks 0.0.0.0:3306->3306/tcp mysql1 root@iZuf6axmuekh1n14dwcufmZ:~# docker run --name tomcat2 -d -p 8083:8080 tomcat:latest 91ebdd8d5c652b465cc15f86cdc1c41167e211aaae9f1e42ab1032e7db8d3854 root@iZuf6axmuekh1n14dwcufmZ:~# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 91ebdd8d5c65 tomcat:latest "catalina.sh run" 9 seconds ago Up 9 seconds 0.0.0.0:8083->8080/tcp tomcat2 f3b0f76293f9 tomcat:latest "catalina.sh run" 8 hours ago Up About an hour 0.0.0.0:8080->8080/tcp tomcat1 4ce1634ce6f1 mysql:latest "docker-entrypoint..." 4 weeks ago Up 4 weeks 0.0.0.0:3306->3306/tcp mysql1 root@iZuf6axmuekh1n14dwcufmZ:~#
关键命令:docker run --name tomcat2 -d -p 8083:8080 tomcat:latest
这里,将宿主的8083端口映射到tomcat容器的8080端口,启动后别名为tomcat2。
(此时,访问ip:8083就可以访问到此tomcat了)
3.上传war包到服务器上,然后复制到此tomcat容器的webapps目录下,具体如下:
root@iZuf6axmuekh1n14dwcufmZ:~# rz rz waiting troot@iZuf6axmuekh1n14dwcufmZ:~# rz root@iZuf6axmuekh1n14dwcufmZ:~# ls tmall2.war
如何上传本地文件到服务器,点击这里
4.将此文件复制到刚才启动的tomcat2容器的webapps下,具体如下:
root@iZuf6axmuekh1n14dwcufmZ:~# docker cp tmall2.war 91ebdd8d5c652b465cc15f86cdc1c41167e211aaae9f1e42ab1032e7db8d3854:usr/local/tomcat/webapps root@iZuf6axmuekh1n14dwcufmZ:~# docker exec -it tomcat2 /bin/bash 进入容器 root@91ebdd8d5c65:/usr/local/tomcat# ls LICENSE NOTICE RELEASE-NOTES RUNNING.txt bin conf include lib logs native-jni-lib temp webapps work root@91ebdd8d5c65:/usr/local/tomcat# cd webapps/ root@91ebdd8d5c65:/usr/local/tomcat/webapps# ls ROOT docs examples host-manager manager tmall2 tmall2.war root@91ebdd8d5c65:/usr/local/tomcat/webapps# exit
91ebdd8d5c652b465cc15f86cdc1c41167e211aaae9f1e42ab1032e7db8d3854,为此容器的id的全称,如果不知道,获取命令为:
docker inspect -f '{{.Id}}' tomcat2
root@iZuf6axmuekh1n14dwcufmZ:~# docker inspect -f '{{.Id}}' tomcat2 91ebdd8d5c652b465cc15f86cdc1c41167e211aaae9f1e42ab1032e7db8d3854
5.重启tomcat2
root@iZuf6axmuekh1n14dwcufmZ:~# docker restart tomcat2 tomcat2
6.去浏览器访问:
相关文章推荐
- Docker---(5)Docker 部署SpringBoot web项目
- Tomcat部署spring web项目,直接通过域名访问,不加项目名称
- spring boot项目中使用spring-boot-devtools模块进行代码热部署,避免重新启动web项目
- eclipse 部署项目到Tomcat spring-web 的jar包部署失败
- spring boot项目中使用spring-boot-devtools模块进行代码热部署,避免重新启动web项目
- spring boot项目中使用spring-boot-devtools模块进行代码热部署,避免重新启动web项目
- Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo
- eclipse 部署项目到Tomcat spring-web 的jar包部署失败 在tomcat 中的WEB-INF/classes 目录下有我该项目工作空间的所有文件及目录
- Ubuntu docker 部署web项目
- Mac下部署springBoot项目到Docker中(demo)
- spring boot项目中使用spring-boot-devtools模块进行代码热部署,避免重新启动web项目
- spring boot项目中使用spring-boot-devtools模块进行代码热部署,避免重新启动web项目
- Docker部署springboot项目实例
- spring-loaded 实现web项目热部署
- spring boot项目中使用spring-boot-devtools模块进行代码热部署,避免重新启动web项目
- spring boot项目中使用spring-boot-devtools模块进行代码热部署,避免重新启动web项目
- Docker 部署 SpringBoot 项目整合 Redis 镜像做访问计数Demo
- Docker部署SpringBoot项目
- spring boot web项目在IDEA下热部署解决办法(四步搞定)