代码之家  ›  专栏  ›  技术社区  ›  Riduidel

如何在traefik前端模板中使用标记?

  •  3
  • Riduidel  · 技术社区  · 7 年前

    我在Consor Catalog中声明了带有标记的服务,通过正确配置traefik,这些服务在traefik中是可见的(考虑一下,我已经测试过了)。

    这些服务通过服务层上的环境变量在Consul中声明了标记。我通常在一些服务上有一个版本标签,在其他服务上有一个单元标签。

    我想让traefik在以下表单的URL上代理我的服务

    http://{version}.{unit].{service}.{domain}/
    

    Host:{{.ServiceName}}.{{.Domain}} 所以我想我可以把我的单位标签改成 Host:{{getTag("BU", tags, "white")}}.{{.ServiceName}}.{{.Domain}}

    "Error creating route for frontend a-frontend: error parsing rule: Empty rule"
    

    定义的单位标记。

    那么,考虑到我像乔恩·斯诺(我对围棋模板一无所知),我怎么能让它工作呢?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Riduidel    7 年前

    version 标记我的服务。这 版本 Attributes

    frontEndRule = Host:{{if hasTag "version" .Attributes}}{{getTag "version" .Attributes ""}}.{{end}}{{.ServiceName}}.{{.Domain}}
    

    请注意,方法调用不使用类似C的文本格式。