Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在分布式服务器中设置docker swarm?_Docker_Docker Swarm - Fatal编程技术网

如何在分布式服务器中设置docker swarm?

如何在分布式服务器中设置docker swarm?,docker,docker-swarm,Docker,Docker Swarm,我已经使用docker compose设置了单主机docker部署。但现在我有4个服务器实例在vultr上运行,每个实例都有不同的服务在运行。 比如说, 服务器1:mongodb 服务器2:node/express 服务器3:redux 服务器4:负载平衡器 如何使用docker swarm连接所有这些服务? 您应该使用和创建大量节点。每个节点都是安装在不同主机上的docker引擎。如果您只有4台主机,您可以决定所有节点都将是 然后您应该部署将部署docker的 使用docker compose

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

服务器1:mongodb

服务器2:node/express

服务器3:redux

服务器4:负载平衡器

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

  • 您应该使用和创建大量节点。每个节点都是安装在不同主机上的docker引擎。如果您只有4台主机,您可以决定所有节点都将是

  • 然后您应该部署将部署docker的 使用
    docker compose.yml
    文件的服务(mongodb等:
    docker stack deploy--compose文件docker compose.yml

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

  • 如果希望每个服务在特定节点上运行,请为 每个节点和添加


在生产中,您应该使用docker swarm+docker stack。使用1台服务器作为管理服务器。通过打开必要的端口在manager服务器上初始化swarm模式,将其他服务器作为工作服务器连接到swarm网络。在manager服务器上,操纵docker stack在任何Worker上安装服务(使用节点id),或者只需要部署堆栈,然后让docker swarm处理日程安排。