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

相关推荐
文丑颜不良啊23 分钟前
LeetCode2021~2040题目解析
java·leetcode
bksczm44 分钟前
InnoDB 行格式详解:DYNAMIC / COMPACT / COMPRESSED / REDUNDANT
java·开发语言·数据库
liangbo71 小时前
Spring系列03:Bean 的三种注册方式
java·spring
余槐i1 小时前
MySQL 8.0 联合索引走错:为什么加了索引查询反而从 200ms 变成 8s
java·spring boot·mysql·docker·性能优化
SL_staff1 小时前
制造业订单交付总在最后一刻爆雷?用结构化计划模板打通跨系统协同断点
java·开源·全栈
做科研的周师兄2 小时前
【R语言实战】MixSIAR 氢氧同位素水源解析全流程:从混合空间校验到贝叶斯 MCMC 收敛诊断(后附完整代码)
java·大数据·开发语言
有点小困9772 小时前
Spring Boot 异步任务 ClassLoader 踩坑实录:ClassNotFoundException 的诡异真相
java
aiks_yuan2 小时前
Java 正则表达式很慢怎么办:Pattern 预编译只快 2~5 倍,真正卡死线程的是回溯(JDK 8、11、17 实测)
java
用户3721574261352 小时前
C# 填写 PDF 交互式表单:文本框、复选框、单选按钮和下拉列表
java
IT枫斗者枫哥2 小时前
Java 退款请求超时,先查原单还是重试?
java·后端