docker-运行tomcat服务

环境说明

linux系统版本:lsb_release -a

 

 

docker 版本: docker -v

 

 

不同的操作系统以及软件版本,可能会遇到不一样的问题,一定要注意版本问题。

 

.1.tomcat镜像版本选择。

进入docker官网搜索 8-jdk8

 

 

自己选择的版本如下

 

 

docker pull tomcat:8-jdk8

 

 

可以正确拉取。

.2.启动tomcat 服务。

docker run --name tomcat8 -d -p 8086:8080 tomcat:8-jdk8

参数解释:

docker run 表示运行docker容器

--name tomcat8 给容器取一个名字

-d 表示以后台模式启动

-p 8086:8080 表示将宿主机上的8086端口映射到容器中的8080端口

tomcat:8-jdk8 表示以某个镜像启动tomcat服务,不指定的话,一般会以最新镜像启动,没有机会自动去下载镜像。

 

.3.登录阿里云服务器,打开8086端口。

控制台-->我的资源-->点击(实例)进入-->安全组-->安全组详情-->手动添加(入站规则)

 

 

.4.访问测试。

404错误。

 

 

进入容器内查看,发现webapps目录下面为空,需要自己添加需要运行的war包。

docker exec -it tomcat8 /bin/bash

 

 

根据网友的建议,可以把 webapps.dist目录下面的内容复制到webapps目录中。

执行命令

rm -rf weapps

mv webapps.dist  webapps

直接将webapps.dist目录覆盖掉 webapps 目录

 

 

.5.重新启动tomcat服务,再次访问。

 

 

如果想运行某一个war包,只需要把war包放在/opt/u01/exam/tomcat 路径下,执行如下的命令即可。

docker run --name tomcat8  \

-d  \

-v /opt/u01/exam/tomcat:/usr/local/tomcat/webapps  \

-p 8086:8080 tomcat:8-jdk8

参数解释:

-v /opt/u01/exam/jenkins:/usr/local/tomcat/webapps 表示将宿主机上的目录挂载到tomcat容器下面的/usr/local/tomcat/webapps目录中

 

参考博文:

https://cloud.tencent.com/developer/article/2225836

https://cloud.tencent.com/developer/article/1834280

 

posted @ 2024-03-27 22:07  一只爱阅读的程序员  阅读(170)  评论(0编辑  收藏  举报