【问题标题】:Docker swarm - how to replicate a service on each node in the swarmDocker swarm - 如何在 swarm 中的每个节点上复制服务
【发布时间】:2018-04-21 14:08:57
【问题描述】:

我想将一个堆栈部署到一个 docker swarm,我希望每个节点都运行一个给定的服务。

我查看了deploy.placement 配置,发现最接近的选项是放置首选项spread=node.label.abc,它将平均分配与标签匹配的节点上的服务。但是,这需要始终更新副本数以匹配节点数。

有没有办法在所有节点上自动部署服务,而无需手动更新副本数?

【问题讨论】:

    标签: docker docker-compose docker-swarm


    【解决方案1】:

    有没有办法在所有节点上自动部署服务,而无需手动更新副本数?

    是的,在global mode 中部署您的服务,而不是复制。链接示例:

    version: '3'
    services:
      worker:
        image: dockersamples/examplevotingapp_worker
        deploy:
          mode: global
    

    这将在与您的约束匹配的每个节点上运行容器的单个实例。

    【讨论】:

      猜你喜欢
      • 2020-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-12
      • 1970-01-01
      • 2021-12-06
      相关资源
      最近更新 更多