Сервисы Docker Swarm недоступны с хоста на Windows Server 2019 - PullRequest
0 голосов
/ 03 апреля 2019

Это кросс-пост от Форумы Docker в попытке получить ответ быстрее

Я работаю над настройкой Dockerized службы в моей компании, которая должна быть сбалансирована по нагрузке и за обратным прокси-сервером IIS (для разгрузки TLS и возможностей множественного размещения). Похоже, что сама служба работает нормально (я могу получить к ней доступ непосредственно со своего компьютера или через обратный прокси-сервер IIS другого сервера к серверу Swarm Manager). Проблема в том, что я не могу получить доступ к сервису от самого менеджера Swarm. Он работает на 0.0.0.0:8080, и я пробовал localhost:8080, 127.0.0.1:8080 и <server's static IP>:8080 безрезультатно.

Если я запускаю автономный контейнер, работающий microsoft/iis с опубликованным портом, я могу получить к нему доступ, так что это, похоже, относится к Swarm.

Я прочитал, что опубликованные порты Swarm не были доступны на адаптере обратной связи до Windows Server 2019, но на этом компьютере установлена ​​последняя сборка 2019 (Windows Server версии 1809, сборка 17763), поэтому у меня сложилось впечатление, что я должен быть в состоянии получить доступ к этой услуге по обратной связи. В идеале нам не нужно запускать IIS на отдельном сервере для обратного прокси-сервера для службы в контейнерах. Что дает?

Это файл docker-compose.yml, который мы используем:

version: "3.7"
services:
  api:
    image: our.registry.server/ourimage:${OUR_IMAGE_VERSION:-latest}
    ports:
      - "8080:80"
    deploy:
      replicas: 2
      update_config:
        parallelism: 1
        delay: 5s
        failure_action: rollback
        monitor: 10s
      rollback_config:
        parallelism: 1
        delay: 2s
        failure_action: continue
        monitor: 10s
      restart_policy:
        delay: 3s
        max_attempts: 3
        window: 45s
    healthcheck:
      test: curl -f http://localhost/healthcheck || exit 1
      interval: 30s
      timeout: 3s
      retries: 3
      start_period: 10s
...