From 86dfa5cb0054130b3cc2d0a0210c4aecb62f11fe Mon Sep 17 00:00:00 2001 From: furyhawk Date: Tue, 1 Jul 2025 21:37:25 +0800 Subject: [PATCH] feat: add Traefik middlewares for Nextcloud service configuration --- swarm/nextcloud.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/swarm/nextcloud.yml b/swarm/nextcloud.yml index 252c934..deb17d3 100644 --- a/swarm/nextcloud.yml +++ b/swarm/nextcloud.yml @@ -60,6 +60,24 @@ services: - traefik.http.routers.nextcloud.service=nextcloud - traefik.http.services.nextcloud.loadbalancer.server.port=80 - "traefik.http.services.nextcloud.loadbalancer.passHostHeader=true" + #Middlerwares + - "traefik.http.routers.nextcloud.middlewares=limit@docker,nextcloudHeader,compresstraefik" #adds limit and headers MWs to router in Traefik, + #Compress + - "traefik.http.middlewares.compresstraefik.compress=true" + #HSTS + - "traefik.http.middlewares.nextcloudHeader.headers.stsSeconds=15552000" + - "traefik.http.middlewares.nextcloudHeader.headers.stsIncludeSubdomains=true" + - "traefik.http.middlewares.nextcloudHeader.headers.stsPreload=true" + - "traefik.http.middlewares.nextcloudHeader.headers.forceSTSHeader=true" + - "traefik.http.middlewares.nextcloudHeader.headers.hostsProxyHeaders=X-Forwarded-Host" + #Buffering + - "traefik.http.middlewares.limit.buffering.maxRequestBodyBytes=10737418240" + - "traefik.http.middlewares.limit.buffering.memRequestBodyBytes=50000000" #200000000 + - "traefik.http.middlewares.limit.buffering.memResponseBodyBytes=50000000" + #DAV + - "traefik.http.middlewares.nextcloud-dav.redirectregex.regex=https://(.*)/.well-known/(?:card|cal)dav" + - "traefik.http.middlewares.nextcloud-dav.redirectregex.replacement=https://cloud.${DOMAIN}/remote.php/dav/" + - "traefik.http.middlewares.nextcloud-dav.redirectregex.permanent=true" # Note: Nginx is an external service. You can find more information about the configuration here: # https://hub.docker.com/_/nginx/