首页 > 解决方案 > 如何在分布式服务器中设置 docker swarm?

问题描述

我已经使用 docker-compose 设置了单主机 docker 部署。但现在我在 vultr 上运行了 4 个服务器实例,每个实例运行不同的服务。例如,

服务器1:mongodb

服务器 2:节点/快递

服务器 3:redux

服务器 4:负载均衡器

如何使用 docker swarm 连接所有这些服务?

标签: dockerdocker-swarm

解决方案


  • 您应该使用docker swarm initdocker swarm join创建节点群。每个节点都是安装在不同主机上的 docker 引擎。如果您只有 4 台主机,您可以决定所有节点都是管理器

  • 然后,您应该部署docker stack,它将使用以下文件部署您的 docker 服务(mongodb 等)docker-compose.ymldocker stack deploy --compose-file docker-compose.yml

  • Docker 服务将根据您在创建每个服务时指定的副本数在所有节点上运行。

  • 如果您希望每个服务在特定节点上运行,请为每个节点分配标签并添加服务约束


推荐阅读