docker:配置nginx 实现负载均衡(docker+nginx+tomcat x2)

docker:配置nginx 实现负载均衡(docker+nginx+tomcat x2)
准备
linux系统*1
docker 基本项目部署请点击 linux 之docker 入门级别项目部署
直接进入主题

下载nginx镜像

docker pull nginx  

启动nginx 查看是否成功

docker -run --name nginx -d -p 82:80 nginx 

访问ip+端口83 出现如下界面即启动成功
docker:配置nginx 实现负载均衡(docker+nginx+tomcat x2)_第1张图片

下载tomcat镜像

docker pull tomcat

查看镜像

docker imaegs 

如图
docker:配置nginx 实现负载均衡(docker+nginx+tomcat x2)_第2张图片
首先启动两个tomcat容器 命名为tomcatnginx1 和tomcatnginx2

docker run --name tomcatnginx1  -d -p8082:8080 tomcat
docker run --name tomcatnginx2  -d -p8082:8080 tomcat

查看容器

docker ps -a

如图
在这里插入图片描述
区别两个tomcat

docker exec -it tomcatnginx1 bash    //进入tomcatnginx1
vi /usr/local/tomcat/webapps/ROOT/index.jsp   //可能会提示vi命名出错 上一篇中已经给出解决办法
//也可以
docker cp tomcatnginx1:/usr/local/tomcat/webapps/ROOT/index.jsp /root/war //将容器中得index 拷贝到宿主主机 进行编辑
docker cp /roo/war/index.jsp tomcatnginx1:/usr/local/tomcat/webapps/ROOT/index.jsp //修改完成之后拷贝到容器

修改内容
tomcat1
docker:配置nginx 实现负载均衡(docker+nginx+tomcat x2)_第3张图片
tomcat2
docker:配置nginx 实现负载均衡(docker+nginx+tomcat x2)_第4张图片
重新启动tomcatnginx1 tmcatnginx2

docker  restart tomcatnginx1  tomcatnginx2

访问 ip+宽口
docker:配置nginx 实现负载均衡(docker+nginx+tomcat x2)_第5张图片
docker:配置nginx 实现负载均衡(docker+nginx+tomcat x2)_第6张图片
编写nginx.cof 文件

mkdir /root/war/           //我这就很随意的目录
vi nginx,conf          //编辑配置文件

内容如下

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;


events {
    worker_connections  1024;
}


http {

    server {
                listen 80;
                location  / {
                        proxy_pass http://blance;
                }
        }

    upstream blance{
            server 119.3.251.000:8082; //tomcat1
            server 119.3.251.000:8083; //tomcat2
    }

    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include /etc/nginx/conf.d/*.conf;

只需要改变上面tomcat 1 tomcat2 的地址端口即可
停止之前启动的nginx服务,也可以删除 我有强迫症 删了

docker stop nginx 
docker rm nginx

之后启动nginx

docker run --name nginx -d -p82:80 -v /root/war/nginx.conf:/etc/nginx/nginx.conf nginx 

-d 后台启动
-p 映射端口
-v 挂在宿主机器文件

查看启动容器

docker ps -a 

在这里插入图片描述
启动成功 访问页面
ip+端口82
docker:配置nginx 实现负载均衡(docker+nginx+tomcat x2)_第7张图片
刷新
docker:配置nginx 实现负载均衡(docker+nginx+tomcat x2)_第8张图片
NICE !!!

你可能感兴趣的:(nginx,负载均衡,反向代理)