Статически настроить микросервис для работы на определенной машине - PullRequest
0 голосов
/ 07 марта 2019

Я создал 4 микроуслуги, используя инфраструктуру Moleculer с docker-compose.Как мне статически настроить каждый микро-сервис для работы на определенной машине.

1 Ответ

0 голосов
/ 07 марта 2019

Возможно, вы захотите использовать docker swarm , у которого есть функция, позволяющая вам развернуть контейнер на определенном узле, который называется Ограничения

Узел: Докер-узел относится к члену в кластере режима роя. Каждый узел роя должен быть док-хостом, Источник: В чем разница между док-хостом и узлом?

Ограничения могут рассматриваться как теги узла. Они представляют собой пары ключ / значение, связанные с конкретным узлом.

Каждый узел по умолчанию имеет следующие ограничения:

  • node.id
  • node.hostname
  • node.role

Служба может быть развернута следующим образом:

docker service create --name backendapp --constraint 'node.hostname == web.example.com'

Обратите внимание, что вы можете развернуть в рое, используя docker-compose.yml:

Команда deploy поддерживает файл compose версии 3.0 и выше.

docker stack deploy --compose-file docker-compose.yml mystack

Также вы можете установить ограничения в docker-compose, как показано в следующем примере:

version: '3.3'
services:
  web:
    image: backendapp-image
    deploy:
      placement:
        constraints:
          - node.hostname == web.example.com

Вы можете начать с роя Docker через здесь

...