配置 traefik 的 ForwardAuth 中间件时出现问题

problem configuring traefik's ForwardAuth middleware

我的容器很少,是用 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/"```

也许,您正在尝试将 "middleware feature" 与旧的 traefik 版本一起使用。

在 toml 文件中有效,因为您使用的是旧版本中的 "forward feature"。

检查 traefik 标签图像是否等于或大于 2.0

https://hub.docker.com/_/traefik