问题
我有多个部署在Docker容器上的服务。我们的每组客户都应被路由到特定的服务。 示例:
这应该使用子域来完成: client1 = client1.example.com client2 = client2.example.com
问题:
我希望此配置是动态的,这意味着Traefik需要从其他服务动态获取这些路由规则:
详细信息:
当我创建一个saas应用程序时,此功能很有用。
非常感谢您。
答案 0 :(得分:0)
一种简单的方法是为每个服务的已定义路由器使用正则表达式,并在加入新客户端后更新正则表达式
例如,将此标签添加到服务1
- traefik.http.routers.app-backend.rule=HostRegexp(`{subdomain:(clinet1)}.example.com`)
,当您添加应由服务1服务的另一个客户端时,只需将标签更新为
- traefik.http.routers.app-backend.rule=HostRegexp(`{subdomain:(clinet1|clientX)}.example.com`)