【实验: docker搭建Nginx+Tomcat负载均衡】

docker搭建设Nginx+Tomcat负载均衡


目标

  • 使用docker架设三个tomcat应用实例-个nginx实例
  • 通过配置nginx实现三个tomcat应用实例的负载均衡

部署3个tomcat容器

部署3个tomcat容器 并且为了区分应用把tomcat应用部署文件夹映射到宿主机的不同文件夹

  • webapp1 webapp2 webapp3分别对应三个不同tomcat容器的webapps
  • 宿主机的8081,8082,8083分别映射三个容器的8080端口
docker run -d -p 8081:8080 --name tomcat1 -v D:\Web\Tomcat\webapps1:/usr/local/tomcat/webapps/  tomcat:7.0.56
docker run -d -p 8082:8080 --name tomcat2 -v D:\Web\Tomcat\webapps2:/usr/local/tomcat/webapps/ tomcat:7.0.56
docker run -d -p 8083:8080 --name tomcat3 -v D:\Web\Tomcat\webapps3:/usr/local/tomcat/webapps/ tomcat:7.0.56

部署后,宿主机的8081端口对应tomcat1的8080 8082对应tomcat2的8080 8083 对应tomcat3的8080

部署nginx容器实现负载均衡

部署nginx容器开放端口8080映射宿主机8080端口,将配置文件nginx.conf挂载为宿主机的D:\docker\nginx\nginx.conf

docker run -d -p 8080:8080 --name nginx -v D:\docker\nginx\nginx.conf:/etc/nginx/nginx.conf  nginx

nginx容器创建完以后我们可以直接修改宿主机上的D:\docker\nginx\nginx.conf 文件来改动容器中nginx配置

	upstream 192.168.56.100 {
	ip_hash;		#解决session问题
	server 192.168.56.100:8081 weight=1;
	server 192.168.56.100:8082 weight=1;
	server 192.168.56.100:8083 weight=1;
	}
	server {
		listen 80;
		server_name localhost;
		location / {
		proxy_pass http://192.168.56.100;

		}
	}

把默认配置文件http块里的server替换成上面的配置,
** 注意两点 **
1.192.168.56.100替换成你自己的宿主机ip
2.server的proxy_pass配置要和upstream保持一致

测试实验结果

分别在三个webapp的文件夹内创建文件夹ROOT,在ROOT内创建默认测试页面index.html,每个页面分别写入对应1,2,3。

访问宿主机的8080端口http://192.168.56.100:8080 可能需要重启下nginx容器, 不断刷新页面测试结果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dangkei

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值