如何在同一后端中 运行 两个 docker 容器接受多个端口上的连接?
How do I run two docker containers in the same backend that can accept connections on multiple ports?
我需要 运行 Traefik 后面的两个相同的容器,它们必须接受来自多个端口的请求。为此,我使用 docker service labels。我 运行 遇到的问题是,当我使用 Docker 服务标签并尝试扩展到两个容器时,我收到一条关于后端已被定义的错误消息。
使用普通标签(traefik.frontend
、traefik.port
等)工作正常,但添加额外标签(traefik.whoami.frontend
、traefik.whoami.port
等)似乎会中断东西。
Docker 撰写文件:
version: '2'
services:
whoami:
image: emilevauge/whoami
networks:
- web
labels:
- "traefik.http.frontend.rule=Host:whoami.docker.localhost"
- "traefik.http.port=80"
- "traefik.http.frontend.entryPoints=http"
- "traefik.http.frontend.backend=whoami"
- "traefik.soap.frontend.rule=Host:whoami.docker.localhost"
- "traefik.soap.port=8443"
- "traefik.soap.frontend.entryPoints=soap"
- "traefik.soap.frontend.backend=whoami"
networks:
web:
external:
name: traefik_webgateway
扩大规模:
$ docker-compose scale whoami=2
Creating and starting whoami_whoami_2 ... done
Traefik 错误日志:
proxy_1 | time="2017-10-23T15:37:16Z" level=error msg="Near line 39 (last key parsed 'backends.backend-whoami.servers'): Key 'backends.backend-whoami.servers.service' has already been defined."
谁能告诉我我做错了什么,或者是否有其他方法可以将两个端口映射到一个容器?
谢谢!
Docker 副本管理存在错误。
将在下一个版本中合并修复:https://github.com/containous/traefik/pull/2314。
我需要 运行 Traefik 后面的两个相同的容器,它们必须接受来自多个端口的请求。为此,我使用 docker service labels。我 运行 遇到的问题是,当我使用 Docker 服务标签并尝试扩展到两个容器时,我收到一条关于后端已被定义的错误消息。
使用普通标签(traefik.frontend
、traefik.port
等)工作正常,但添加额外标签(traefik.whoami.frontend
、traefik.whoami.port
等)似乎会中断东西。
Docker 撰写文件:
version: '2'
services:
whoami:
image: emilevauge/whoami
networks:
- web
labels:
- "traefik.http.frontend.rule=Host:whoami.docker.localhost"
- "traefik.http.port=80"
- "traefik.http.frontend.entryPoints=http"
- "traefik.http.frontend.backend=whoami"
- "traefik.soap.frontend.rule=Host:whoami.docker.localhost"
- "traefik.soap.port=8443"
- "traefik.soap.frontend.entryPoints=soap"
- "traefik.soap.frontend.backend=whoami"
networks:
web:
external:
name: traefik_webgateway
扩大规模:
$ docker-compose scale whoami=2
Creating and starting whoami_whoami_2 ... done
Traefik 错误日志:
proxy_1 | time="2017-10-23T15:37:16Z" level=error msg="Near line 39 (last key parsed 'backends.backend-whoami.servers'): Key 'backends.backend-whoami.servers.service' has already been defined."
谁能告诉我我做错了什么,或者是否有其他方法可以将两个端口映射到一个容器?
谢谢!
Docker 副本管理存在错误。
将在下一个版本中合并修复:https://github.com/containous/traefik/pull/2314。