如何为每个 docker swarm 节点运行多个 docker 容器

问题描述 投票:0回答:1

我有一个由多个 swarm 节点(物理服务器)组成的 docker swarm。如何在每个节点中运行 2 个容器实例?

  • 我知道
    global
    选项允许我在每个节点中运行一个容器,但每个 swarm 节点需要 2 个容器,而不是一个。
  • 我知道
    replicas
    选项允许我运行多个容器,但每个 swarm 节点需要 2 个容器,而不是整个 swarm 需要 2 个容器。
docker docker-compose docker-swarm
1个回答
2
投票

如果集群有 3 个节点,那么以下操作应该有效:

services:
  some-service:
    deploy:
      replicas: 6
      placement:
        max_replicas_per_node: 2

如果节点数量可变,则可以将副本设置为

(max_nodes*2)
,并忽略无法调度的任务。给 swarm 解析器一个永远无法达到的目标状态确实让人感觉有点不舒服,但它将确保 swarm 始终运行,每个节点至少且最多 2 个副本。

© www.soinside.com 2019 - 2024. All rights reserved.