feat: SABnzbd VPN-Exit ueber dedizierten Hetzner-Tunnel wiederherstellen

- wireguard-Service (sabnzbd-wg) zurueck in den Stack
- sabnzbd nutzt network_mode: service:wireguard (Full-Tunnel ueber Hetzner-IP)
- healthcheck auf wg-handshake + depends_on service_healthy
- Port 7777 am wireguard-Container (geteilter Netzstack)

Tunnel: SABnzbd 10.13.13.2 <-> Hetzner wg2 (51821), frische Keys + PSK,
isoliert vom wg0-Hub. Behebt: Usenet lief ungeschuetzt ueber RZ-IP.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Sascha 2026-06-15 21:52:47 +02:00
parent 3a017e9f67
commit 0ae625d00a

View file

@ -1,7 +1,38 @@
services: services:
# WireGuard VPN-Exit -> Hetzner wg2 (dedizierter Tunnel). SABnzbd teilt diesen Netzstack,
# damit der gesamte Usenet-Traffic ueber die Hetzner-IP rausgeht.
wireguard:
image: lscr.io/linuxserver/wireguard:latest
container_name: sabnzbd-wg
cap_add:
- NET_ADMIN
- SYS_MODULE
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Berlin
volumes:
- /app-config/sabnzbd/wg:/config
- /lib/modules:/lib/modules:ro
sysctls:
- net.ipv4.conf.all.src_valid_mark=1
ports:
- 7777:7777 # SABnzbd-WebUI laeuft im Netzstack dieses Containers
healthcheck:
test: ["CMD-SHELL", "wg show wg0 | grep -q 'latest handshake' || exit 1"]
interval: 30s
timeout: 5s
retries: 3
start_period: 20s
restart: unless-stopped
sabnzbd: sabnzbd:
image: lscr.io/linuxserver/sabnzbd:latest image: lscr.io/linuxserver/sabnzbd:latest
container_name: sabnzbd container_name: sabnzbd
network_mode: "service:wireguard"
depends_on:
wireguard:
condition: service_healthy
environment: environment:
- PUID=1000 - PUID=1000
- PGID=1000 - PGID=1000
@ -12,8 +43,6 @@ services:
- tdarr:/tdarr - tdarr:/tdarr
- chris:/chris - chris:/chris
- /mnt/media:/data - /mnt/media:/data
ports:
- 7777:7777
restart: unless-stopped restart: unless-stopped
volumes: volumes: