compose部署tomcat

1.部署tomcat

1.1.下载相关镜像tomcat8.5.20

$ docker pull tomcat:8.5.20

1.2 在/data目录下创建tomcat/webapps目录

mkdir -p /data/tomcat/webapps

注意:这里是准备将宿主机的/data/tomcat/webapps映射到容器的

/usr/local/tomcat/webapps目录,那么在创建tomcat-0容器后,

本应该存在与webapps目录下的原生目录(例如:manager等)都

将不存在,因为映射的宿主机目录/data/tomcat/webapps为空,

所以将不能采用tomcat原有部署方式,只能将war通过rz命令上传

至宿主机的/data/tomcat/webapps目录

1.2.测试镜像

$ docker run \

-p 8080:8080 \

--name tomcat-0 \

--privileged=true \

--restart=always \

-v /soft/tomcat/webapps:/usr/local/tomcat/webapps \

-e TZ=Asia/Shanghai \

-itd tomcat:8.5.20

注1:TZ=Asia/Shanghai用于设置时区为:亚洲/上海,可进入容器用如下命令进行查看

echo `date "+%Y-%m-%d %H:%M:%S"`

注2:以上容器的创建采用的是bridge默认网络

3.上传hello.war至/data/tomcat/webapps目录 rz hello.war

将war包拖入工具中

java -jar spring.jar --server/port=8081

太麻烦了这种方式,打包放在镜像中运行

编写vim Dockerfile

4.测试crm项目

http://xx.xx.xx.xx:8080/crm/sys/loginAction.action?username=zs\&password=123

tomcat-0 -> bridge默认网络

mysql -> mynetwork自定义网络
2.部署web项目

向移植docker compose

详见/docker-compose/docker-compose-v1.yml文件
3.1.制作自己mytomcat:8.5.20镜像

1.上传相关文件至/docker-compse目录

Dockerfile-mytomcat8.5.20

wait-for-it.sh

2.制作自定义镜像

docker build -f Dockerfile-mytomcat8.5.20 -t mytomcat:8.5.20 .

3.2.移植到docker-compose

使用自定义的mytomcat:8.5.20镜像构建tomcat容器。

详见docker-compose/docker-compose-v5.yml

docker-compose启动成功后,先停止tomcat容器,再停止mysql-master容器,再启动tomcat容器,查看tomcat容器日志,这时将提示wait等待中,最后在启动mysql-master后tomcat容器将正常启动。

#容器启停命令

docker -f docker-compose-v5.yml stop tomcat-0

docker -f docker-compose-v5.yml stop mysql-master

docker-compose -f docker-compose-v5.yml up -d tomcat-0

docker-compose -f docker-compose-v5.yml up -d mysql-master

#查看容器日志

docker-compose -f docker-compose-v5.yml logs -f tomcat-0

docke

r -f docker-compose-v5.yml logs -f

相关推荐
工业甲酰苯胺29 分钟前
实现 json path 来评估函数式解析器的损耗
java·前端·json
老前端的功夫30 分钟前
Web应用的永生之术:PWA落地与实践深度指南
java·开发语言·前端·javascript·css·node.js
@forever@31 分钟前
【JAVA】LinkedList与链表
java·python·链表
LilySesy1 小时前
ABAP+WHERE字段长度不一致报错解决
java·前端·javascript·bug·sap·abap·alv
六件套是我1 小时前
redission实现延时队列
android·java·servlet
王元_SmallA1 小时前
Redis Desktop Manager(Redis可视化工具)安装
java·后端
ᐇ9592 小时前
Java HashMap深度解析:数据结构、原理与实战指南
java·开发语言·数据结构
好好研究2 小时前
Spring框架 - 开发方式
java·后端·spring
武子康2 小时前
Java-166 Neo4j 安装与最小闭环 | 10 分钟跑通 + 远程访问 Docker neo4j.conf
java·数据库·sql·docker·系统架构·nosql·neo4j
2301_796512523 小时前
Rust编程学习 - 为什么说Cow 代表的是Copy-On-Write, 即“写时复制技术”,它是一种高效的 资源管理手段
java·学习·rust