docker10

在宿主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/

猜你喜欢

转载自www.cnblogs.com/yanhuidj/p/12920292.html