Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.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 worker节点?_Docker_Docker Swarm - Fatal编程技术网

桌面客户端软件感知容器如何故障转移到另一个Docker Swarm worker节点?

桌面客户端软件感知容器如何故障转移到另一个Docker Swarm worker节点?,docker,docker-swarm,Docker,Docker Swarm,我们使用10个工作节点运行Docker Swarm,我创建了一个在主机网络上运行的Nginx port 80容器,其副本=1,这意味着在这10个工作节点中,将有1个Nginx容器在这些工作节点中运行 问题:如果此Nginx容器在没有固定IP地址的工作节点周围浮动,客户端PC如何知道该去哪里?您可能希望在ngix容器上创建一个服务。您可以使用配置此服务。路由网格使群中的每个节点都能够接受群中运行的任何服务的已发布端口上的连接,因此,当您查询群集中的任何节点时,您将被重定向到容器中的任何位置 $ d

我们使用10个工作节点运行Docker Swarm,我创建了一个在主机网络上运行的Nginx port 80容器,其副本=1,这意味着在这10个工作节点中,将有1个Nginx容器在这些工作节点中运行


问题:如果此Nginx容器在没有固定IP地址的工作节点周围浮动,客户端PC如何知道该去哪里?

您可能希望在ngix容器上创建一个
服务。您可以使用配置此服务。路由网格使群中的每个节点都能够接受群中运行的任何服务的已发布端口上的连接,因此,当您查询群集中的任何节点时,您将被重定向到容器中的任何位置

$ docker service create \
  --name my-web \
  --publish published=80,target=80 \
  --replicas 1 \
  nginx

路由网格仅防止容器在工作节点上运行失败,如果Docker节点本身失败则没有帮助,对吗?您可以查询任何节点,因此如果您要查询的节点已关闭,您将根本不会有任何响应。为了防止这种情况,您可以使用外部负载平衡器,如下所述: