У меня есть файл стека, в котором я пытаюсь указать ему использовать одно из двух имен хостов, которые я предоставляю. Это возможно? Служба не запускается с этими переменными, однако при удалении хотя бы одной из них работает. Спасибо за помощь!
файл стека:
deploy:
placement:
constraints:
- node.hostname == myhost1
- node.hostname == myhost2
Ограничения размещения объединены в цепочку по И.
Тем не менее, вы можете добавить метки узлов к обоим хостам и вместо этого использовать метку узла в качестве ограничения размещения. Я использую метку «mycustomlabel=true», чтобы проиллюстрировать использование.
На узле менеджера:
docker node update --label-add mycustomlabel=true myhost1
docker node update --label-add mycustomlabel=true myhost2
Затем используйте метку узла в качестве ограничения размещения:
deploy:
placement:
constraints:
- node.labels.mycustomlabel == true
Конечно, метка может иметь ключ = значение по вашему выбору. Узел может иметь несколько меток узла.
спасибо за это решение, красиво и чисто!