首页 > 解决方案 > 有没有办法在 docker swarm 中更喜欢节点部署?

问题描述

我的 swarm 中有三个节点,一个经理和两个工人(工人 1 和工人 2)。我有几个服务最好在第一个工作节点(worker1)上运行,但是当这个节点出现故障时,我希望它开始在第二个工作节点上运行。

根据我收集到的信息,我可以设置这样的约束。

  placement:
    constraints:
    - node.hostname==worker1

然而,这会强制服务在 worker1 上运行,并且当该节点关闭时,服务将简单地关闭。

我也可以这样做

  placement:
    constraints:
     - node.role==worker

这会将服务限制为任一工作节点,但不会像我想要的那样优先考虑 worker1。有没有办法将服务优先考虑到特定节点而不是施加约束?

标签: dockerdocker-composedocker-swarm

解决方案


推荐阅读