与docker compose一起使用时覆盖默认traefik前端规则

时间:2018-10-17 11:13:59

标签: traefik

默认情况下,Traefik为新启动的Docker容器创建前端规则:

https://docs.traefik.io/configuration/backends/docker/

  

traefik.frontend.rule = EXPR |覆盖默认的前端规则。默认值:主机:{containerName}。{domain}或主机:{service}。{project_name}。{domain}(如果您使用的是docker-compose)。

我正在使用docker-compose,这种默认行为对我没有用。我想使用docker标签并将前端规则更改为User或什至是默认的非组合Host:{hostname}.{domain},但这是行不通的。标签不会被解析。该规则最终是文字标签字符串。

我不了解文档。{containerName}.{domain}中的EXPR到底是什么?

1 个答案:

答案 0 :(得分:1)

{hostname}{domain}只是为了表明默认值将从docker获取值。不幸的是,它并没有像它的编写方式那样从全局值中进行替换。

EXPR是诸如"Host: myapp.example.com"之类的任何traefik规则表达式。在此处的文档中可以找到更多示例:https://docs.traefik.io/basics/#examples