访问docker swarm的所有实例

时间:2017-09-19 17:20:20

标签: docker swarm

我们开始实施docker swarm或我们应用程序的某些部分。其中一个部分是Web套接字服务器,它允许我们将“实时”内容推送给特定用户。

我的问题是 - 如果我想对特定容器进行休息呼叫,而不是覆盖网络上的负载均衡 - 是可能的吗?如果是这样,我将如何去做呢?

由于

1 个答案:

答案 0 :(得分:1)

如果我正确理解了您的用例,以下示例可能会帮助您开始使用。

给定覆盖网络和具有多个副本的服务:

docker network create --driver overlay --attachable nginx
docker service create --name nginx --network nginx --replicas 3 nginx:alpine

您可以运行连接到nginx网络的容器:

docker run --rm -it --network nginx alpine:edge ash

在该容器内,您可以找到服务的所有任务,如下所示:

apk add -U drill
drill tasks.nginx

响应应该包含类似的内容:

...
;; ANSWER SECTION:
tasks.nginx.    600 IN  A   10.0.1.3
tasks.nginx.    600 IN  A   10.0.1.4
tasks.nginx.    600 IN  A   10.0.1.5
...

但是,您并不需要可连接的网络和单个容器。或者,您也可以在同一网络中创建另一个服务,如nginx,并让该服务执行tasks.<service-name>查找以执行所需的操作。