我只有几个容器,并由docker-compose带来,我想对这些容器执行身份验证。 在我认为应该执行的操作的下面,但是并没有转到authentication-backend-nginx-private,而是直接放在mds-backend-nginx-private上。我不知道,配置有什么问题...
如果全局配置了authforward,它可以工作:在入口点部分的toml文件中,但我希望它是针对每个特定容器的。
mds-backend-nginx-private:
<<: *nginx-common
ports:
- 8186:80
networks:
- cloud_private
- mds-backend
restart: on-failure
environment:
- NGINX_SERVER_NAME=mds-backend-nginx-private
- WEBSITE_PROXY_NAME=mds-backend-web-private
- WEBSITE_PROXY_PORT=8000
labels:
- "traefik.http.middlewares.authf.ForwardAuth.Address=http://authentication-backend-nginx-private/api/v1/gateway/account?with_credentials=true"
- "traefik.docker.network=cloud_private"
- "traefik.http.routers.mds-backend.middlewares=authf"
- "traefik.frontend.rule=PathPrefix: /api/v1/mds/"```
答案 0 :(得分:0)
也许,您正试图在旧版traefik版本中使用“中间件功能”。
在toml文件中工作,因为您使用的是旧版本中的“转发功能”。
检查traefik标签图片等于或大于2.0