From 18ec2a2e8c99f0eb7cadbd3749cb84007cd85433 Mon Sep 17 00:00:00 2001 From: Jozsef Gtta Date: Fri, 7 Aug 2026 15:28:37 +0000 Subject: [PATCH] Document qBittorrent migration to gluetun (VPN container) --- homelab-overview.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/homelab-overview.md b/homelab-overview.md index c13be3f..c1ca6fb 100644 --- a/homelab-overview.md +++ b/homelab-overview.md @@ -155,6 +155,8 @@ All stack data volumes are stored at `/srv/docker//` on each host us | Radarr | lscr.io/linuxserver/radarr:latest | 7878 | Movie automation | | Sonarr | lscr.io/linuxserver/sonarr:latest | 8989 | TV show automation | | Prowlarr | lscr.io/linuxserver/prowlarr:latest | 9696 | Indexer manager for Radarr/Sonarr | +| gluetun | qmcgaw/gluetun:latest | 8080 (proxied) | ProtonVPN gateway — qBittorrent runs behind this | +| qBittorrent | lscr.io/linuxserver/qbittorrent:latest | 8080 | Torrent client (network_mode: service:gluetun) | | FlareSolverr | ghcr.io/flaresolverr/flaresolverr:latest | 8191 | Cloudflare bypass for indexers | | Watchtower | containrrr/watchtower | — | Auto-updates arr-stack containers | | Node Exporter | prom/node-exporter:latest | 9100 (host) | Prometheus metrics | @@ -162,6 +164,8 @@ All stack data volumes are stored at `/srv/docker//` on each host us Media storage is mounted at `/mnt/media` on the jellyfin host and presented as `/data` inside Radarr and Sonarr. +**qBittorrent + gluetun (added 2026-08-07):** qBittorrent used to run natively (`qbittorrent-nox` systemd service) bound to a ProtonVPN desktop-app interface (`proton0`). When that GUI-managed tunnel dropped, qBittorrent had no way to reconnect without an interactive desktop session, silently killing all downloads. It's now containerized: `qbittorrent` runs with `network_mode: service:gluetun`, so it shares gluetun's network namespace entirely — if the VPN tunnel drops, qBittorrent has zero network access (fails closed, never falls back to the real IP) until gluetun auto-reconnects, which it does on its own. Compose file: `/srv/docker/qbittorrent/docker-compose.yml` on the jellyfin host. Uses ProtonVPN OpenVPN credentials (see API Codes.md). qBittorrent's config volume (`/srv/docker/qbittorrent/config`) also mounts the media disk at the identical path `/mnt/media` (not `/data`) so it matches Sonarr/Radarr's existing Remote Path Mapping (`/mnt/media/` → `/data/`) and the pre-existing categories (`tv-sonarr`, `movies-radarr`) and resume data needed no path rewriting during migration. + --- ### jgpc — 192.168.88.41 — AI / Workstation Host @@ -255,4 +259,3 @@ PBS has two datastores: | AI (Open WebUI) | https://ai.jgitta.com | | Guacamole | https://apache.jgitta.com | | Vaultwarden | https://vault.jgitta.com | -