【问题标题】:Docker Swarm: deploy containers on Worker nodeDocker Swarm:在 Worker 节点上部署容器
【发布时间】:2019-01-30 15:48:36
【问题描述】:

我正在尝试在多个实例上部署应用程序。 在主节点上,我使用了这些命令:

  • docker swarm init
  • docker network create --attachable --driver overlay fabric
  • docker stack deploy --compose-file docker-compose-org2.yaml fabric

并且该服务已部署在主节点上并且运行正常。

现在我有另一个名为:docker-compose-orderer.yaml 的撰写文件,我想将其部署在其他 AWS 实例上。

我在worker node上使用了以下命令:

  • docker swarm join --token SWMTKN-1-29jg0j594eluoy8g86dniy3opax0jphhe3a4w3hjuvglekzt1b-525ene2t4297pgpxp5h5ayf89 <IP>:2377
  • docker stack deploy --compose-file docker-compose-org1.yaml fabric

它命令docker stack deploy --compose-file docker-compose-org1.yaml fabricthis node is not a swarm manager. Use "docker swarm init" or "docker swarm join" to connect this node to swarm and try again

有人知道如何在工作节点中部署撰写文件吗?

任何帮助/建议将不胜感激。

更新 1:

Worker节点成功加入swarm manager。

ID                            HOSTNAME            STATUS              AVAILABILITY        MANAGER STATUS      ENGINE VERSION
qz9y7p1ba3prp23xtuv3uo2dk     ip-172-31-18-206    Ready               Active                                  18.06.1-ce
no97mrg6f7eftbbeu86xg88d9 *   ip-172-31-40-235    Ready               Active              Leader              18.06.1-ce

【问题讨论】:

  • 是的,我可以看到节点。检查更新的详细信息

标签: docker docker-compose docker-swarm docker-swarm-mode


【解决方案1】:

您必须在管理器节点上应用所有 docker servicedocker stack 命令。它将自动在较少使用的节点上部署容器。当您想在特定节点上显式部署容器时,您必须标记此节点并使用约束。

【讨论】:

  • @paskl 将您的本地 docker 守护程序与管理器节点的 docker 守护程序连接起来,或者通过 ssh 连接到管理器节点并在那里运行您的命令。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-20
相关资源
最近更新 更多