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
我正在尝试使用 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