35 lines
No EOL
894 B
Django/Jinja
35 lines
No EOL
894 B
Django/Jinja
http:
|
|
routers:
|
|
{% for service in proxied_services %}
|
|
{{ service.name }}:
|
|
rule: "Host(`{{ service.domain }}`)"
|
|
service: {{ service.name }}-service
|
|
entryPoints:
|
|
- {{ 'websecure' if use_ssl else 'web' }}
|
|
{% if use_ssl %}
|
|
tls:
|
|
{% if cert_mode == 'acme' %}
|
|
certResolver: {{ ssl_cert_resolver }}
|
|
{% else %}
|
|
{}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endfor %}
|
|
|
|
services:
|
|
{% for service in proxied_services %}
|
|
{{ service.name }}-service:
|
|
loadBalancer:
|
|
passHostHeader: true
|
|
servers:
|
|
- url: "{{ service.protocol }}://{{ service.backend_host }}:{{ service.port }}"
|
|
{% if service.protocol == 'https' and cert_mode == 'selfsigned' %}
|
|
serversTransport: insecure-transport
|
|
{% endif %}
|
|
{% endfor %}
|
|
|
|
{% if cert_mode == 'selfsigned' %}
|
|
serversTransports:
|
|
insecure-transport:
|
|
insecureSkipVerify: true
|
|
{% endif %} |