Запуск службы docker на основе другой службы

#docker #docker-compose #docker-swarm

#docker #docker-compose #docker-swarm

Вопрос:

Есть ли возможность запустить службу на определенном узле на основе другой запущенной службы? (с использованием Docker Swarm)

Чтобы сделать себя немного более понятным:

Я хочу запустить Nextcloud на другом узле, отличном, например, от Typo3, чтобы сэкономить некоторые ресурсы на моем узле Nextcloud.

Как бы я написал это в compose?

Ответ №1:

Изучите развертывание и использование меток:

Пример:

         deploy:
            mode: replicated
            replicas: 1
            placement:
                constraints:
                - node.labels.NextcloudDaemon == true
            restart_policy:
                condition: any
 

В приведенном выше примере будет запущен ровно 1 контейнер, и только на том узле, которому вы уже присвоили метку «NextcloudDaemon».