2016-04-12 10:49:37 +03:00
[backends]
2016-04-15 10:56:06 +03:00
{{range $ index , $ node := .Nodes}}
2017-08-25 18:32:03 +03:00
[backends."backend-{{getBackend $ node }}".servers."{{getBackendName $ node $ index }}"]
url = "{{getAttribute "protocol" $ node . Service . Tags "http"}}://{{getBackendAddress $ node }}:{{ $ node . Service . Port }}"
{{ $ weight := getAttribute "backend.weight" $ node . Service . Tags "0"}}
{{with $ weight }}
weight = {{ $ weight }}
2016-04-12 10:49:37 +03:00
{{end}}
{{end}}
{{range .Services}}
{{ $ service := .ServiceName}}
{{ $ circuitBreaker := getAttribute "backend.circuitbreaker" .Attributes ""}}
{{with $ circuitBreaker }}
2016-06-22 23:43:20 +03:00
[backends."backend-{{ $ service }}".circuitbreaker]
2016-04-12 10:49:37 +03:00
expression = "{{ $ circuitBreaker }}"
{{end}}
2016-06-22 23:43:20 +03:00
[backends."backend-{{ $ service }}".loadbalancer]
2017-08-24 19:38:05 +03:00
sticky = {{getAttribute "backend.loadbalancer.sticky" .Attributes "false"}}
method = "{{getAttribute "backend.loadbalancer" .Attributes "wrr"}}"
2016-08-25 06:46:47 +03:00
{{if hasMaxconnAttributes .Attributes}}
[backends."backend-{{ $ service }}".maxconn]
amount = {{getAttribute "backend.maxconn.amount" .Attributes "" }}
extractorfunc = "{{getAttribute "backend.maxconn.extractorfunc" .Attributes "" }}"
{{end}}
2016-02-02 20:03:40 +03:00
{{end}}
2016-04-15 10:56:06 +03:00
[frontends]
{{range .Services}}
2016-06-22 23:43:20 +03:00
[frontends."frontend-{{.ServiceName}}"]
2016-04-12 10:49:37 +03:00
backend = "backend-{{.ServiceName}}"
2016-05-10 14:43:24 +03:00
passHostHeader = {{getAttribute "frontend.passHostHeader" .Attributes "true"}}
2016-06-06 23:30:23 +03:00
priority = {{getAttribute "frontend.priority" .Attributes "0"}}
2016-04-12 10:49:37 +03:00
{{ $ entryPoints := getAttribute "frontend.entrypoints" .Attributes ""}}
{{with $ entryPoints }}
entrypoints = [{{range getEntryPoints $ entryPoints }}
"{{.}}",
{{end}}]
{{end}}
2017-09-07 16:28:02 +03:00
basicAuth = [{{range getBasicAuth .Attributes}}
"{{.}}",
{{end}}]
2016-06-22 23:43:20 +03:00
[frontends."frontend-{{.ServiceName}}".routes."route-host-{{.ServiceName}}"]
2016-04-12 10:49:37 +03:00
rule = "{{getFrontendRule .}}"
2016-02-02 20:03:40 +03:00
{{end}}