Docker---(4)Docker 部署spring web项目

原文: Docker---(4)Docker 部署spring web项目

版权声明:欢迎转载,请标明出处,如有问题,欢迎指正!谢谢!微信:w1186355422 https://blog.csdn.net/weixin_39800144/article/details/79067682

注:博主系统是ubuntu。

此文介绍,如何将一个项目spring web发布到docker中的tomcat容器中,服务器为阿里云服务器。

1.项目打包为war包
2.启动一个tomcat容器,具体如下:

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

扫描二维码关注公众号,回复: 5254604 查看本文章

root@iZuf6axmuekh1n14dwcufmZ:~# docker inspect -f '{{.Id}}' tomcat2
91ebdd8d5c652b465cc15f86cdc1c41167e211aaae9f1e42ab1032e7db8d3854

5.重启tomcat2

root@iZuf6axmuekh1n14dwcufmZ:~# docker restart tomcat2
tomcat2

6.去浏览器访问:










猜你喜欢

转载自www.cnblogs.com/lonelyxmas/p/10410194.html