Docker запускает несколько экземпляров контейнера без --scale - PullRequest
0 голосов
/ 10 октября 2018

У меня есть docker-compose.yml, который работает на простом веб-сервере.Я хочу создать несколько экземпляров контейнера без --scaling в команде запуска.Вот так я сейчас запускаю несколько экземпляров контейнера docker-composer up -d --scale appserver=2.

В идеале, я бы хотел поместить какую-то инструкцию в docker-compose.yml, чтобы сделать это.Ниже приведен пример docker-compose.yml

version: '3'
services:
  appserver:
    image: nimmis/apache
  haproxy:
    image: eeacms/haproxy
    ports:
      - '80:5000'
      - '1936:1936'
    environment:
      BACKENDS: 'appserver_1:80 appserver_2:80 appserver_3:80'
      DNS_ENABLED: 'true'
      LOG_LEVEL: info

. Обратите внимание, что я пытаюсь использовать только несколько экземпляров службы appserver.

1 Ответ

0 голосов
/ 10 октября 2018

Компоновка Docker не поддерживает раздел deploy, но если вы переключитесь на режим Swarm с одним узлом (так же просто, как запуск docker swarm init), вы можете развернуть с помощью:

docker stack deploy -c docker-compose.yml stack_name

с помощьюследующий yaml:

version: '3'
services:
  appserver:
    image: nimmis/apache
    deploy:
      replicas: 2
  haproxy:
    image: eeacms/haproxy
    ports:
      - '80:5000'
      - '1936:1936'
    environment:
      BACKENDS: 'appserver_1:80 appserver_2:80 appserver_3:80'
      DNS_ENABLED: 'true'
      LOG_LEVEL: info
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...