我用两个服务配置了一个 docker compose 文件:1 个节点 js 应用程序和 1 个 nginx 作为反向代理。我使用 docker compose scale 标志来缩放 (3) 节点容器。
一些 docker 如何对 3 个节点容器之间的流量进行负载平衡,但我无法理解如何在文档中找到它。你能帮我理解一下吗? 注意:我没有使用 docker swarm。
这是我在nginx中使用的配置
worker_processes auto;
events {
worker_connections 1024;
}
http {
upstream all {
server demo:80;
}
server {
listen 80;
location / {
proxy_pass http://all;
proxy_http_version 1.1;
proxy_cache_bypass $http_upgrade;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
}
}
}
这就是我的 docker ps -a 的样子
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c6530cb5e017 demo-app "docker-entrypoint.s…" 13 hours ago Up 13 hours 0.0.0.0:49162->80/tcp, :::49162->80/tcp poc_demo_2
48b410882a89 demo-app "docker-entrypoint.s…" 13 hours ago Up 13 hours 0.0.0.0:49161->80/tcp, :::49161->80/tcp poc_demo_3
858feb84c60b demo-app "docker-entrypoint.s…" 13 hours ago Up 13 hours 0.0.0.0:49160->80/tcp, :::49160->80/tcp poc_demo_1
1a72a78ba820 nginx "nginx -g 'daemon of…" 13 hours ago Up 13 hours 0.0.0.0:80->80/tcp, :::80->80/tcp poc_nginx_1
我尝试调用节点端点,每次响应都来自不同的容器,我想了解它是如何发生的?