【问题标题】:Traefik segment in Docker SwarmDocker Swarm 中的 Traefik 段
【发布时间】:2018-06-04 11:16:02
【问题描述】:

我(就像我们所有使用 Docker Cloud 的人一样)将我的应用程序迁移到新环境,所以我选择了 Docker Swarm CE。我使用 Traefik 作为反向代理,在迁移之前,它可以按照文档处理段,但由于某种原因,它无法在 Swarm 中处理这些段。

我的服务为给定的路径前缀公开端口 3000 和 3001。这是 docker-compose.yml 中用于有问题的服务的部分:

my-service:
image: my-service-image
deploy:
  restart_policy:
    condition: on-failure
  labels:
    traefik.port: 80
    traefik.serviceapi.backend: api
    traefik.serviceapi.frontend.entryPoints: "http,https"
    traefik.serviceapi.frontend.rule: "PathPrefixStrip:/service/api"
    traefik.serviceapi.port: 3000
    traefik.servicesocket.backend: socket
    traefik.servicesocket.frontend.entryPoints: "http,https,ws,wss"
    traefik.servicesocket.frontend.rule: "PathPrefixStrip:/service/socket"
    traefik.servicesocket.port: 3001

但由于某种原因,swarm 无法识别这些 traefik 片段,或者我遗漏了一些东西。

有人遇到同样的问题吗?

谢谢!

更新:

traefik:
image: traefik
command: 
  - "--web" 
  - "--docker" 
  - "--docker.swarmMode" 
  - "--docker.watch" 
  - "--docker.domain=my-domain"
  - "--defaultentrypoints=http,https" 
  - "--entrypoints=Name:http Address::80 Redirect.EntryPoint:https"
  - "--entrypoints=Name:https Address::443 TLS"
  - "--acme" 
  - "--acme.storage=/etc/traefik/acme/acme.json" 
  - "--acme.entryPoint=https" 
  - "--acme.domains=my-domain"
  - "--acme.httpChallenge.entryPoint=http" 
  - "--acme.email=email"
  - "--logLevel=DEBUG" 
deploy:
  restart_policy: 
    condition: on-failure
ports: 
  - 80:80
  - 443:443
  - 8080:8080
volumes: 
  - ./var/run/docker.sock:/var/run/docker.sock
  - ./traefik/acme/acme.json:/etc/traefik/acme/acme.json

我有 10 多个服务正常工作,唯一的问题是我无法到达我的服务端点,似乎 swarm 无法识别 traefik 段。

【问题讨论】:

  • 请包含您的 compose 文件的其余部分,注意缩进,包括用于启动 traefik 的 compose 文件或命令、traefik 日志以及您在尝试连接到应用程序时设置的错误。

标签: docker docker-compose docker-swarm traefik


【解决方案1】:

我找到了解决方案,因此它可能对某人有所帮助: 对于 Docker Swarm,您必须设置 traefik.port,除非您使用的是分段 - 在这种情况下,您删除 traefik.port 并只设置服务的端口。在我的情况下,我只需要删除 traefik.port: 80,以及 .backend 的,traefik 将创建它自己的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多