管理器不在Docker中进行负载均衡

问题描述 投票:0回答:1

当我访问MANAGERIP中的管理器节点时,它不会对其工作负载进行负载,但如果我访问WORKERIP,它们将在它们之间进行负载平衡并使管理器退出。

我的docker-compose.yml:

version: "3"
services:
    web:
        image: -
        deploy:
          replicas: 3
          resources:
            limits:
              cpus: "0.5"
          restart_policy:
            condition: on-failure
        ports:
          - "80:80"
          - "8080:80"
        networks:
          - webnet
        volumes:
          - /home/{{ ansible_user }}/.env:/home/opus/.env
          - /home/{{ ansible_user }}/database.php:/home/opus/config/database.php
    networks:
      webnet:

这是一个配置问题?管理员可以访问所有节点,并且所有节点都在运行容器。

docker google-cloud-platform docker-compose docker-swarm
1个回答
0
投票

问题是我无法将外部ip通告给swarm,所以正确的语法是:

docker swarm init
    --advertise-addr=**GoogleCloud Machine Internal IP(10.*.*.*)**

对于docker join来说同样的事情,工作者应该使用管理器内部IP。

© www.soinside.com 2019 - 2024. All rights reserved.