docker学习笔记-10
在宿主host主机上面创建两个目录,一个用来挂载正式环境的war,一个用来挂载测试环境的war
root@ubuntu:/data# mkdir prod test
root@ubuntu:/data# ls
mysql-data prod software test
准备一个简单的java web项目
接下来用Eclipse创建一个最简单的Dynamic Web Project,只有一个index.jsp然后打包为TestDemo.war,然后把TestDemo.war分别放到prod和test目录下
TestDemo.war链接:https://pan.baidu.com/s/1J--E-fmwo5TmMxn1NnjBXw 密码:j3ta
root@ubuntu:/data# ls test/
TestDemo.war
root@ubuntu:/data# ls prod/
TestDemo.war
root@ubuntu:/data#
启动Tomcat容器:通过挂载不同的代码目录和运行端口来区分
这里,我使用了前面章节中构建的tomcat镜像mt/mytomcatdemo
测试环境:
root@ubuntu:/home/guanfuchang# docker run -d -p 28080:8080 --name demo_test -v /data/test/:/data/tomcat/webapps mt/mytomcatdemo:1.0 /data/start.sh
启动后,访问宿主主机ip:端口,如:http://192.168.147.128:28080/TestDemo/
生产环境:
docker run -d -p 80:8080 --name demo_prod -v /data/prod/:/data/tomcat/webapps mt/mytomcatdemo:1.0 /data/start.sh
启动后,访问宿主主机ip:端口,如:http://192.168.147.128/TestDemo/
案例:修改测试环境代码
通过将宿主主机上的目录/data/test 挂载到容器的/data/tomcat/webapps 目录上后,这两个目录就实现了资源的共享,现在进入宿主主机的目录/data/test中,可以看到多出了一个文件夹TestDemo
现在,修改TtestDemo目录下的index.jsp,如下:
重新访问测试地址和生产地址
http://192.168.147.128:28080/TestDemo/
http://192.168.147.128/TestDemo/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了