From 988999c47460463f4d9e17e25957ea352848f139 Mon Sep 17 00:00:00 2001 From: nilsjohan Date: Wed, 15 Apr 2026 12:39:46 +0200 Subject: [PATCH] Updatdet Caddyfile --- compose.yml | 2 +- conf/Cadddyfil.2024-04-14v2 | 130 ++++++++++++++++++++++++++++++++ conf/Caddyfile | 143 +++++++++++++++++------------------- 3 files changed, 200 insertions(+), 75 deletions(-) create mode 100644 conf/Cadddyfil.2024-04-14v2 diff --git a/compose.yml b/compose.yml index 8fde8a0..b7ef8e3 100644 --- a/compose.yml +++ b/compose.yml @@ -1,6 +1,6 @@ services: caddy: - image: caddy:2 + image: caddy:latest container_name: caddy restart: unless-stopped ports: diff --git a/conf/Cadddyfil.2024-04-14v2 b/conf/Cadddyfil.2024-04-14v2 new file mode 100644 index 0000000..65c2b49 --- /dev/null +++ b/conf/Cadddyfil.2024-04-14v2 @@ -0,0 +1,130 @@ +#(simpleAuth) +(auth) { + basic_auth { + admin $2a$14$DahHUWD2cKyXJ96sH5VQwuQv1bqmIn0gsdoSaw4mofzfdNY2Y0VsO + } +} + +(common) { + encode gzip zstd + header { + X-Frame-Options "SAMEORIGIN" + X-Content-Type-Options "nosniff" + } +} + +test.gynther.se { + respond "det fungerar" +} + +bazarr.gynther.se { + import common + reverse_proxy http://bazarr:6767 +} + +prowlarr.gynther.se { + import common + reverse_proxy http://prowlarr:9696 +} + +radarr.gynther.se { + import common + reverse_proxy http://radarr:7878 +} + +sonarr.gynther.se { + import common + reverse_proxy http://sonarr:8989 +} + +jellyfin.gynther.se { + reverse_proxy http://jellyfin:8096 +} + +qbittorrent.gynther.se { + import common + reverse_proxy 192.168.50.4:8080 +} + +wetty.gynther.se { + import auth + import common + redir / /wetty + reverse_proxy 172.22.0.6:3000 { + transport http { + websocket + } + } +} +portainer.gynther.se { + reverse_proxy portainer:9000 +} + +gitea.gynther.se { + import common + reverse_proxy 192.168.50.2:3002 +} + +# ============================================ +# Import Service (Document Converter) - Standalone UI +# ============================================ +#import.gynther.se { +# import common +# reverse_proxy recipe-import-service:3000 +#} +# +# ============================================ +# RECIPE APP + IMPORT SERVICE +# ============================================ +recept.gynther.se { + import auth + import common + + # === IMPORT SERVICE (Document Converter) === + # Dessa endpoints måste komma FÖRST innan backend reglerna! + handle /api/recipes/import* { + reverse_proxy recipe-import-service:3000 + } + + # === RECIPE FRONTEND PROXY ENDPOINTS === + # Next.js API routes + handle /api/inventory-history-proxy { + reverse_proxy recipe-frontend:3000 + } + + handle /api/admin/merge-preview-proxy { + reverse_proxy recipe-frontend:3000 + } + + handle /api/recipe-preview-proxy { + reverse_proxy recipe-frontend:3000 + } + + # === RECIPE BACKEND API ENDPOINTS === + # Backend körs på port 8080 (från docker-compose) + handle /api/products* { + reverse_proxy recipe-api:8080 + } + + handle /api/inventory* { + reverse_proxy recipe-api:8080 + } + + handle /api/recipes* { + reverse_proxy recipe-api:8080 + } + + # === HEALTH CHECKS === + handle /health { + reverse_proxy recipe-api:8080 + } + + # === CATCH ALL === + # Övriga /api/* går till frontend + handle /api/* { + reverse_proxy recipe-frontend:3000 + } + + # Frontend - catch all remaining routes (port 3000) + reverse_proxy /* recipe-frontend:3000 +} diff --git a/conf/Caddyfile b/conf/Caddyfile index e7db7a2..60390ae 100644 --- a/conf/Caddyfile +++ b/conf/Caddyfile @@ -1,132 +1,127 @@ #(simpleAuth) (auth) { - basic_auth { - admin $2a$14$DahHUWD2cKyXJ96sH5VQwuQv1bqmIn0gsdoSaw4mofzfdNY2Y0VsO - } + basic_auth { + admin $2a$14$DahHUWD2cKyXJ96sH5VQwuQv1bqmIn0gsdoSaw4mofzfdNY2Y0VsO + } } (common) { - encode gzip zstd - header { - X-Frame-Options "SAMEORIGIN" - X-Content-Type-Options "nosniff" - # Säker cookie för sessionhantering - Set-Cookie "session_id=default; Path=/; SameSite=Lax; Secure; HttpOnly" - } + encode gzip zstd + header { + X-Frame-Options "SAMEORIGIN" + X-Content-Type-Options "nosniff" + } } test.gynther.se { - respond "det fungerar" + respond "det fungerar" } bazarr.gynther.se { - import common - reverse_proxy http://bazarr:6767 + import common + reverse_proxy http://bazarr:6767 } prowlarr.gynther.se { - import common - reverse_proxy http://prowlarr:9696 + import common + reverse_proxy http://prowlarr:9696 } radarr.gynther.se { - import common - reverse_proxy http://radarr:7878 + import common + reverse_proxy http://radarr:7878 } sonarr.gynther.se { - import common - reverse_proxy http://sonarr:8989 + import common + reverse_proxy http://sonarr:8989 } jellyfin.gynther.se { - reverse_proxy http://jellyfin:8096 + reverse_proxy http://jellyfin:8096 } qbittorrent.gynther.se { - import common - reverse_proxy 192.168.50.4:8080 + import common + reverse_proxy 192.168.50.4:8080 } wetty.gynther.se { - import auth - import common - redir / /wetty - reverse_proxy wetty:3001 - transport http { - websocket # Aktivera WebSocket-stöd - } + import auth + import common + redir / /wetty + reverse_proxy wetty:3001 } portainer.gynther.se { - reverse_proxy portainer:9000 + reverse_proxy portainer:9000 } gitea.gynther.se { - import common - reverse_proxy 192.168.50.2:3002 + import common + reverse_proxy 192.168.50.2:3002 } # ============================================ # Import Service (Document Converter) - Standalone UI # ============================================ import.gynther.se { - import common - reverse_proxy recipe-import-service:3000 + import common + reverse_proxy recipe-import-service:3000 } # ============================================ # RECIPE APP + IMPORT SERVICE # ============================================ recept.gynther.se { - import auth - import common + import auth + import common - # === IMPORT SERVICE (Document Converter) === - # Dessa endpoints måste komma FÖRST innan backend reglerna! - handle /api/recipes/import* { - reverse_proxy recipe-import-service:3000 - } + # === IMPORT SERVICE (Document Converter) === + # Dessa endpoints måste komma FÖRST innan backend reglerna! + handle /api/recipes/import* { + reverse_proxy recipe-import-service:3000 + } - # === RECIPE FRONTEND PROXY ENDPOINTS === - # Next.js API routes - handle /api/inventory-history-proxy { - reverse_proxy recipe-frontend:3000 - } + # === RECIPE FRONTEND PROXY ENDPOINTS === + # Next.js API routes + handle /api/inventory-history-proxy { + reverse_proxy recipe-frontend:3000 + } - handle /api/admin/merge-preview-proxy { - reverse_proxy recipe-frontend:3000 - } + handle /api/admin/merge-preview-proxy { + reverse_proxy recipe-frontend:3000 + } - handle /api/recipe-preview-proxy { - reverse_proxy recipe-frontend:3000 - } + handle /api/recipe-preview-proxy { + reverse_proxy recipe-frontend:3000 + } - # === RECIPE BACKEND API ENDPOINTS === - # Backend körs på port 8080 (från docker-compose) - handle /api/products* { - reverse_proxy recipe-api:8080 - } + # === RECIPE BACKEND API ENDPOINTS === + # Backend körs på port 8080 (från docker-compose) + handle /api/products* { + reverse_proxy recipe-api:8080 + } - handle /api/inventory* { - reverse_proxy recipe-api:8080 - } + handle /api/inventory* { + reverse_proxy recipe-api:8080 + } - handle /api/recipes* { - reverse_proxy recipe-api:8080 - } + handle /api/recipes* { + reverse_proxy recipe-api:8080 + } - # === HEALTH CHECKS === - handle /health { - reverse_proxy recipe-api:8080 - } + # === HEALTH CHECKS === + handle /health { + reverse_proxy recipe-api:8080 + } - # === CATCH ALL === - # Övriga /api/* går till frontend - handle /api/* { - reverse_proxy recipe-frontend:3000 - } + # === CATCH ALL === + # Övriga /api/* går till frontend + handle /api/* { + reverse_proxy recipe-frontend:3000 + } - # Frontend - catch all remaining routes (port 3000) - reverse_proxy /* recipe-frontend:3000 + # Frontend - catch all remaining routes (port 3000) + reverse_proxy /* recipe-frontend:3000 }