Traefik:无法使用摘要身份验证登录服务

Traefik: Cannot login to service with digest authentication

我正在尝试使用 Traefik 反向代理到使用摘要身份验证的服务。

当我在 docker-compose 中公开服务后直接通过其端口访问服务时,它工作正常,但是当我通过 Traefik 访问它时,登录弹出窗口不断出现,因为返回了 401。

我也看过 Traefik 中间件,但我认为它只是为了添加摘要身份验证,而不是与已经拥有它的服务一起使用。

我必须如何配置 Traefik 才能解决这个问题?

工作docker-撰写:

version: "3"

services:
  service:
    image: service:tag
    cap_add:
      - NET_ADMIN
    ports:
      - "8082:8082/tcp"

docker-compose 与 traefik 一起使用:

version: "3"

networks:
  web:
    external: true
  internal:
    external: false

services:
  service:
    image: service:tag
    cap_add:
      - NET_ADMIN
    labels:
      - traefik.api.frontend.rule=Host:domain.com
      - traefik.docker.network=web
      - traefik.port=8082
    networks:
      - internal
      - web
    ports:
      - "1194:1194/udp"

和 traefik.toml:

logLevel = "DEBUG"

defaultEntryPoints = ["http"]

[entryPoints]
  [entryPoints.dashboard]
    address = ":8080"
    [entryPoints.dashboard.auth]
      [entryPoints.dashboard.auth.basic]
        users = ["user:hash"]

  [entryPoints.http]
    address = ":80"

[api]
entrypoint="dashboard"

[docker]
domain = "domain.com"
watch = true
network = "web"

我是这样启动traefik的:

docker run -d -v /var/run/docker.sock:/var/run/docker.sock -v $PWD/traefik.toml:/traefik.toml -p 80:80 -l traefik.frontend.rule=Host:monitor.domain.com -l traefik.port=8080 --network web --name traefik traefik:1.7.2-alpine

然后是服务:

docker-compose up

除身份验证外一切正常。

这似乎是 Traefik 中的一个错误:https://github.com/containous/traefik/issues/4281