main_server/volumes/traefik/dynamic.yml
2023-02-12 15:57:45 +01:00

145 lines
3.9 KiB
YAML

---
http:
middlewares:
remove_www_yinghong_massage:
redirectRegex:
regex: "^https://www\\.(yinghong-massage\\.de.*)"
replacement: "https://${1}"
permanent: true
remove_www_juna_li_com:
redirectRegex:
regex: "^https://www\\.(juna-li\\.com.*)"
replacement: "https://${1}"
permanent: true
mo8it_xyz_to_com:
redirectRegex:
regex: "^(https://[a-z-]+\\.mo8it\\.)xyz(.*)"
replacement: "${1}com${2}"
permanent: true
xueyue_li_art_to_juna_li_com:
redirectRegex:
regex: "^(https://)(www\\.)?xueyue-li\\.art(.*)"
replacement: "${1}${2}juna-li.com${3}"
permanent: true
yinghong_massage_ratelimit:
rateLimit:
average: 1
burst: 2
period: 3
webhook_ratelimit:
rateLimit:
average: 1
burst: 1
period: 3
nextcloud_dav:
redirectRegex:
regex: "^(https://nextcloud\\.mo8it\\.com)/\\.well-known/(card|cal)dav$"
replacement: "${1}/remote.php/dav"
permanent: true
routers:
to_xueyue_li_art:
rule: Host(`juna-li.com`) || Host(`www.juna-li.com`) || Host(`xueyue-li.art`)|| Host(`www.xueyue-li.art`)
middlewares:
- xueyue_li_art_to_juna_li_com
- remove_www_juna_li_com
service: nginx
to_how_to_linux:
rule: Host(`how-to-linux.mo8it.com`) || Host(`how-to-linux.mo8it.xyz`)
middlewares:
- mo8it_xyz_to_com
service: nginx
to_advlabdb:
rule: Host(`advlabdb.mo8it.com`)
service: advlabdb
to_forgejo:
rule: Host(`git.mo8it.com`) || Host(`git.mo8it.xyz`)
middlewares:
- mo8it_xyz_to_com
service: forgejo
to_nextcloud:
rule: Host(`nextcloud.mo8it.com`) || Host(`nextcloud.mo8it.xyz`)
middlewares:
- mo8it_xyz_to_com
- nextcloud_dav
service: nextcloud
to_hedgedoc:
rule: Host(`pads.mo8it.com`) || Host(`pads.mo8it.xyz`)
middlewares:
- mo8it_xyz_to_com
service: hedgedoc
to_limesurvey:
rule: Host(`survey.mo8it.com`)
service: limesurvey
to_webhook:
rule: Host(`webhook.mo8it.com`)
middlewares:
- webhook_ratelimit
service: webhook
to_yinghong_massage:
rule: Host(`yinghong-massage.de`) || Host(`www.yinghong-massage.de`)
priority: 1
middlewares:
- remove_www_yinghong_massage
service: nginx
to_yinghong_massage_contact_form:
rule: Host(`yinghong-massage.de`) && PathPrefix(`/contact-form`)
priority: 2
middlewares:
- yinghong_massage_ratelimit
service: yinghong_massage_contact_form
to_ihatemoney:
rule: Host(`ihatemoney.mo8it.com`)
service: ihatemoney
to_lldap:
rule: Host(`ldap.mo8it.com`)
service: lldap
to_julia_course_export:
rule: Host(`julia-course.mo8it.com`)
service: julia_course_export
services:
nginx:
loadBalancer:
servers:
- url: http://nginx
advlabdb:
loadBalancer:
servers:
- url: http://advlabdb
forgejo:
loadBalancer:
servers:
- url: http://forgejo:3000
nextcloud:
loadBalancer:
servers:
- url: http://nextcloud
hedgedoc:
loadBalancer:
servers:
- url: http://hedgedoc:3000
limesurvey:
loadBalancer:
servers:
- url: http://limesurvey:8080
webhook:
loadBalancer:
servers:
- url: http://webhook
yinghong_massage_contact_form:
loadBalancer:
servers:
- url: http://yinghong-massage-contact-form
ihatemoney:
loadBalancer:
servers:
- url: http://ihatemoney
lldap:
loadBalancer:
servers:
- url: http://lldap:17170
julia_course_export:
loadBalancer:
servers:
- url: http://julia_course_export