Files
terraform/templates/traefik.services.tpl
2026-01-20 17:13:19 +01:00

129 lines
3.0 KiB
Smarty

http:
routers:
http-catchall:
rule: "HostRegexp(`{host:.+}`)"
entryPoints:
- web
middlewares:
- redirect-to-https
service: noop
%{~ for _, service in services }
%{~ for _, subservice in service }
${subservice.name}:
rule: "Host(`${subservice.host}${subservice.host != "" ? "." : ""}${subservice.domain}`)"
entryPoints:
- websecure
service: ${subservice.name}
tls:
certResolver: letsencrypt
middlewares:
- redirect-errors
%{~ endfor }
%{~ endfor }
nextcloud:
rule: "Host(`nextcloud.aldon.fr`)"
entryPoints:
- websecure
service: nextcloud
tls:
certResolver: letsencrypt
middlewares:
- redirect-errors
rocket:
rule: "Host(`discussion.fefan.fr`)"
entryPoints:
- websecure
service: rocket
tls:
certResolver: letsencrypt
middlewares:
- redirect-errors
wiki:
rule: "Host(`benoit.mathieu.wiki`)"
entryPoints:
- websecure
service: wiki
tls:
certResolver: letsencrypt
middlewares:
- redirect-errors
vaultwarden:
rule: "Host(`vaultwarden.aldon.fr`)"
entryPoints:
- websecure
service: vaultwarden
tls:
certResolver: letsencrypt
middlewares:
- redirect-errors
keycloak:
rule: "Host(`keycloak.aldon.fr`)"
entryPoints:
- websecure
service: keycloak
tls:
certResolver: letsencrypt
middlewares:
- redirect-errors
services:
%{~ for _, service in services }
%{~ for _, subservice in service }
${subservice.name}:
loadBalancer:
passHostHeader: true
servers:
- url: "http://${subservice.ip}:${subservice.port}"
%{~ endfor }
%{~ endfor }
noop:
loadBalancer:
servers:
- url: "http://127.0.0.1"
nextcloud:
loadBalancer:
passHostHeader: true
servers:
- url: "http://192.168.1.30:11000"
rocket:
loadBalancer:
passHostHeader: true
servers:
- url: "http://192.168.1.15:3000"
wiki:
loadBalancer:
passHostHeader: true
servers:
- url: "http://192.168.1.38:8080"
vaultwarden:
loadBalancer:
passHostHeader: true
servers:
- url: "http://192.168.1.36:80"
keycloak:
loadBalancer:
passHostHeader: true
servers:
- url: "http://192.168.1.34:8080"
error-handler-service:
loadBalancer:
passHostHeader: true
servers:
- url: "http://127.0.0.1:8090"
middlewares:
redirect-to-https:
redirectScheme:
scheme: https
redirect-errors:
errors:
status:
- "500"
- "501"
- "503"
- "502"
service: error-handler-service
query: "/502.html"