Docker下Nginx+Tomcat实现负载均衡

Docker下Nginx+Tomcat实现负载均衡_第1张图片
1.在宿主机安装docker并启动

2.拉取nginx、tomcat镜像。

3.启动tomcat镜像并创建新首页

docker run -d -p 8081:8080 --name tomcat1 tomcat镜像ID
docker run -d -p 8082:8080 --name tomcat2 tomcat镜像ID
docker run -d -p 8083:8080 --name tomcat3 tomcat镜像ID

配置新首页
vi index1.jsp
hello world

vi index2.jsp
hello world2

vi index3.jsp``
hello world3

三个容器分别执行

docker cp index1.jsp tomcat1:/usr/local/tomcat/webapps/ROOT/index.jsp
docker cp index2.jsp tomcat2:/usr/local/tomcat/webapps/ROOT/index.jsp
docker cp index3.jsp tomcat3:/usr/local/tomcat/webapps/ROOT/index.jsp

4.启动nginx容器

docker run -p 82:80 --name nginx1 -d daocloud.io/library/nginx

5.修改nginx配置文件

进入nginx1

docker exec -it nginx1 bash

进入配置文件

cd etc
cd nginx
vim nginx.conf

如果没有vim编辑器的话可以下载插件

apt-get  update
apt-get install vim

nginx.conf配置文件:
Docker下Nginx+Tomcat实现负载均衡_第2张图片
Docker下Nginx+Tomcat实现负载均衡_第3张图片
其中以下为新增部分
Docker下Nginx+Tomcat实现负载均衡_第4张图片
退出nginx.conf并保存

 docker commit 容器ID nginx1

查看容器

CONTAINER ID        IMAGE                       COMMAND                  CREATED             STATUS              PORTS                    NAMES
b07acfee03d2        daocloud.io/library/nginx   "nginx -g 'daemon of…"   22 minutes ago      Up 4 seconds        0.0.0.0:82->80/tcp       nginx1
fd07b5a52dc9        273c6a7e33d5                "catalina.sh run"        32 minutes ago      Up 32 minutes       0.0.0.0:8083->8080/tcp   tomcat3
70504c263f1c        273c6a7e33d5                "catalina.sh run"        32 minutes ago      Up 32 minutes       0.0.0.0:8082->8080/tcp   tomcat2
286c80246e27        273c6a7e33d5                "catalina.sh run"        32 minutes ago      Up 32 minutes       0.0.0.0:8081->8080/tcp   tomcat1

将容器重新启动

docker restart nginx1
docker restart tomcat1
docker restart tomcat2
docker restart tomcat3

最后出现页面 ,证明成功
Docker下Nginx+Tomcat实现负载均衡_第5张图片

你可能感兴趣的:(Docker下Nginx+Tomcat实现负载均衡)