使用 Traefik 将基本身份验证应用于除一个容器之外的所有容器
Use Traefik to apply basic auth to all containers except one
除 select 少数容器外,要求对所有容器进行基本身份验证的最佳方法是什么?
与this question类似,仍在等待答案。
你不能这样做,你需要在每个前端添加基本身份验证。
https://docs.traefik.io/configuration/backends/docker/#on-containers
您可以仅向某些使用 traefik 标签的容器添加身份验证。例如:
两个容器堆叠在一起,一个有这个标签:
"traefik.frontend.auth.basic=user:$$apr1$Cv/OMGj$$ZomWQzuQbL.3TRCS81A1g/"
另一个没有。访问第一个容器需要对用户 user
进行身份验证。另一个会打开。
参考:https://docs.traefik.io/configuration/backends/docker/#on-containers
通过标签向您的 traefik 容器添加一个基本的身份验证标签
labels:
# Basic Auth middleware
- traefik.http.middlewares.YOUR_AUTH_MIDDLEWARE_NAME.basicauth.users=${TRAEFIK_BASICAUTH_USERS}
然后,在您的其他容器中,您可以通过标签添加相同的中间件:
labels:
- traefik.enable=true
- traefik.port=80
- traefik.http.routers.YOUR_ROUTER_NAME.rule=Host(`subdomain.domain.com`)
- traefik.http.routers.YOUR_ROUTER_NAME.entryPoints=websecure
- traefik.http.routers.YOUR_ROUTER_NAME.middlewares=YOUR_AUTH_MIDDLEWARE_NAME # <- this enables basic auth, using the same users
对于不应具有基本身份验证的容器,只需删除最后一个标签
除 select 少数容器外,要求对所有容器进行基本身份验证的最佳方法是什么?
与this question类似,仍在等待答案。
你不能这样做,你需要在每个前端添加基本身份验证。
https://docs.traefik.io/configuration/backends/docker/#on-containers
您可以仅向某些使用 traefik 标签的容器添加身份验证。例如:
两个容器堆叠在一起,一个有这个标签:
"traefik.frontend.auth.basic=user:$$apr1$Cv/OMGj$$ZomWQzuQbL.3TRCS81A1g/"
另一个没有。访问第一个容器需要对用户 user
进行身份验证。另一个会打开。
参考:https://docs.traefik.io/configuration/backends/docker/#on-containers
通过标签向您的 traefik 容器添加一个基本的身份验证标签
labels:
# Basic Auth middleware
- traefik.http.middlewares.YOUR_AUTH_MIDDLEWARE_NAME.basicauth.users=${TRAEFIK_BASICAUTH_USERS}
然后,在您的其他容器中,您可以通过标签添加相同的中间件:
labels:
- traefik.enable=true
- traefik.port=80
- traefik.http.routers.YOUR_ROUTER_NAME.rule=Host(`subdomain.domain.com`)
- traefik.http.routers.YOUR_ROUTER_NAME.entryPoints=websecure
- traefik.http.routers.YOUR_ROUTER_NAME.middlewares=YOUR_AUTH_MIDDLEWARE_NAME # <- this enables basic auth, using the same users
对于不应具有基本身份验证的容器,只需删除最后一个标签