From 6aae282334a14e6356a1f339e6d632cba8dbed35 Mon Sep 17 00:00:00 2001 From: karmacoma Date: Tue, 25 Nov 2025 23:49:33 +0000 Subject: [PATCH] Add prowlarr.docker-compose.yml Signed-off-by: karmacoma --- prowlarr.docker-compose.yml | 53 +++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 prowlarr.docker-compose.yml diff --git a/prowlarr.docker-compose.yml b/prowlarr.docker-compose.yml new file mode 100644 index 0000000..92b22b4 --- /dev/null +++ b/prowlarr.docker-compose.yml @@ -0,0 +1,53 @@ +services: + radarr: + image: lscr.io/linuxserver/prowlarr:latest + container_name: array-prowlarr + environment: + - PUID=1000 + - PGID=1000 + - TZ=${TZ:-Europe/Berlin} + - _APP_URL=$SERVICE_URL_PROWLARR + volumes: + # Option A: Named Volume (Managed by Docker, harder to backup manually) + - prowlarr-config:/config + # Option B: Bind Mount (Easier to backup, stores files on your host folder) + # - ./config/radarr:/config <-- I usually recommend this for "arr" apps + + # FIX: This was indented inside 'volumes' in your snippet. + # It must be at the same level as 'volumes' and 'environment'. + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:9696/ping"] + interval: 30s # 2s is very aggressive, 30s is standard + timeout: 10s + retries: 3 + + labels: + - "traefik.enable=true" + # Define a custom service pointing to port 7878 (prowlarr WebUI) + - "traefik.http.services.prowlarr-svc.loadbalancer.server.port=9696" + + # --- SECURE ROUTER (HTTPS) --- + # 1. Match the domain + - "traefik.http.routers.prowlarr-secure.rule=Host(`prowlarr.karmacoma.dev`)" + # 2. Use HTTPS entrypoint + - "traefik.http.routers.prowlarr-secure.entrypoints=https" + # 3. Enable TLS (SSL) using LetsEncrypt + - "traefik.http.routers.prowlarr-secure.tls=true" + - "traefik.http.routers.prowlarr-secure.tls.certresolver=letsencrypt" + # 4. Apply the Authentik Middleware (Check the name matches your dynamic config) + - "traefik.http.routers.prowlarr-secure.middlewares=authentik-auth@file" + # 5. Point to the service we defined above + - "traefik.http.routers.prowlarr-secure.service=prowlarr-svc" + # 6. PRIORITY: This is the fix. Higher number wins over Coolify defaults. + - "traefik.http.routers.prowlarr-secure.priority=100" + + # --- OPTIONAL: HTTP REDIRECT (Standard Coolify behavior) --- + - "traefik.http.routers.prowlarr-http.rule=Host(`qbittorrent.karmacoma.dev`)" + - "traefik.http.routers.prowlarr-http.entrypoints=http" + - "traefik.http.routers.prowlarr-http.middlewares=redirect-to-https" + - "traefik.http.routers.prowlarr-http.priority=100" + - "traefik.http.middlewares.redirect-to-https.redirectscheme.scheme=https" + +# If you stick with Option A (prowlarr-config), you must declare it here: +volumes: + radarr-config: \ No newline at end of file