簡體   English   中英

nginx 負載均衡器 - Docker 組合

[英]nginx load balancer - Docker compose

我在容器內的端口 5000 上運行了一個簡單的燒瓶應用程序,我正在嘗試添加 nginx 負載平衡來擴展應用程序(3 個實例)

這是我的docker-compose文件:

version: "3.7"

services: 
    chat-server:
        image: chat-server
        build: 
            context: .
            dockerfile: Dockerfile
        volumes: 
            - './chat_history:/src/app/chat_history'
        networks: 
            - "chat_net"

    ngnix-server:
        image: nginx:1.13
        ports: 
            - "8080:80"
        volumes: 
            - './ngnix.conf:/etc/ngnix/nginx.conf'
        networks: 
            - "chat_net"
        depends_on: 
            - chat-server

networks: 
    chat_net:

這是我的nginx.conf文件:

events { worker_connections 1024;}

http {
    upstream app {
        server chat-server_1:5000;
        server chat-server_2:5000;
        server chat-server_3:5000;

    }
}

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

這兩個服務都在同一個chat_net網絡上,但是當我在瀏覽器上點擊localhost:8080 ,我得到了 nginx 默認頁面,這是為什么? 我錯過了什么?

我在容器內的端口 5000 上運行了一個簡單的 Flask 應用程序,我正在嘗試添加 nginx 負載平衡來擴展應用程序(3 個實例)

這是我的docker-compose文件:

version: "3.7"

services: 
    chat-server:
        image: chat-server
        build: 
            context: .
            dockerfile: Dockerfile
        volumes: 
            - './chat_history:/src/app/chat_history'
        networks: 
            - "chat_net"

    ngnix-server:
        image: nginx:1.13
        ports: 
            - "8080:80"
        volumes: 
            - './ngnix.conf:/etc/ngnix/nginx.conf'
        networks: 
            - "chat_net"
        depends_on: 
            - chat-server

networks: 
    chat_net:

這是我的nginx.conf文件:

events { worker_connections 1024;}

http {
    upstream app {
        server chat-server_1:5000;
        server chat-server_2:5000;
        server chat-server_3:5000;

    }
}

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

這兩個服務都在同一個chat_net網絡上,但是當我在瀏覽器上點擊localhost:8080 ,我得到了 nginx 默認頁面,這是為什么? 我錯過了什么?

@Jedi 不應該至少在下面嗎?

events { worker_connections 1024;}

http {
    upstream app {
        least_conn;
        server chat-server_1:5000;
        server chat-server_2:5000;
    }
    server {
        listen 80;
        location / {
            proxy_pass http://app;
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM