Files
202601docs/docs/changelog/2026-01-12.md
2026-01-12 20:05:01 +01:00

2.8 KiB

Changelog 2026-01-12

Servarr Stack — Migration VPN Complète

Contexte

La stack Servarr avait initialement Transmission derrière le VPN (gluetun), mais Prowlarr, Sonarr et Radarr étaient exposés directement sur le réseau Docker, sans protection VPN.

Changements

Architecture réseau

Service Avant Après
Transmission Via VPN Via VPN
Prowlarr Direct Via VPN
Sonarr Direct Via VPN
Radarr Direct Via VPN

Configuration Docker

Tous les services utilisent maintenant network_mode: "service:gluetun" :

services:
  gluetun:
    ports:
      - "9091:9091"   # Transmission
      - "9696:9696"   # Prowlarr  
      - "7878:7878"   # Radarr
      - "8989:8989"   # Sonarr
    environment:
      - FIREWALL_OUTBOUND_SUBNETS=192.168.0.0/16,100.64.0.0/10

  prowlarr:
    network_mode: "service:gluetun"
    depends_on:
      gluetun:
        condition: service_healthy

  sonarr:
    network_mode: "service:gluetun"
    # ...

  radarr:
    network_mode: "service:gluetun"
    # ...

Configuration des apps

Les connexions internes ont été mises à jour dans les bases SQLite :

App Setting Ancienne valeur Nouvelle valeur
Prowlarr Download Client gluetun:9091 localhost:9091
Prowlarr Sonarr App http://sonarr:8989 http://localhost:8989
Prowlarr Radarr App http://radarr:7878 http://localhost:7878
Sonarr Download Client gluetun:9091 localhost:9091
Radarr Download Client gluetun:9091 localhost:9091

Avantages

  1. Kill switch intégré : Si gluetun tombe, aucun service n'a accès Internet
  2. IP unique : Tous les services apparaissent avec la même IP ProtonVPN
  3. Sécurité renforcée : Les indexeurs et API sont protégés par le VPN
  4. Cohérence : Architecture uniforme pour toute la stack

Vérification

# Vérifier l'IP VPN
docker exec gluetun wget -qO- https://ipinfo.io/ip
# Résultat: 5.253.204.x (ProtonVPN Luxembourg)

# Tester la connectivité interne
docker exec gluetun sh -c 'wget -qO- http://localhost:9696/ping'
# Résultat: {"status":"OK"}

Fichiers modifiés

  • ~/lake/servarr/docker-compose.yml — nouvelle architecture
  • ~/lake/servarr/prowlarr/prowlarr.db — connexions internes
  • ~/lake/servarr/sonarr/sonarr.db — connexions internes
  • ~/lake/servarr/radarr/radarr.db — connexions internes

Backup

Ancien compose sauvegardé : ~/lake/servarr/docker-compose.yml.bak

Notes

  • Caddy continue de proxyfier via gluetun:PORT
  • Le Caddyfile existant était déjà correct, seul un caddy reload était nécessaire
  • Le cache DNS de Caddy peut nécessiter un restart complet du container après modifications