Files
Runtipi-store/apps/gluetun-qbittorrent/docker-compose.yml
T
2026-08-29 12:57:00 +03:00

65 lines
2.4 KiB
YAML

services:
gluetun:
image: qmcgaw/gluetun:latest
container_name: gluetun
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun:/dev/net/tun
sysctls:
# Debian 13 + yeni kernel'de gorulen "default route not found"
# crash-loop hatasi icin: IPv6'yi bu container icin kapatiyoruz.
- net.ipv6.conf.all.disable_ipv6=1
environment:
- VPN_SERVICE_PROVIDER=protonvpn
- VPN_TYPE=wireguard
- WIREGUARD_PRIVATE_KEY=${WIREGUARD_PRIVATE_KEY}
- WIREGUARD_ADDRESSES=${WIREGUARD_ADDRESSES}
- SERVER_COUNTRIES=${SERVER_COUNTRIES}
- FIREWALL_OUTBOUND_SUBNETS=${FIREWALL_OUTBOUND_SUBNETS:-172.16.0.0/12,192.168.0.0/16}
- TZ=${TZ}
# ProtonVPN'in NAT-PMP port forwarding'i: Gluetun otomatik port
# ister, degistiginde asagidaki komutla qBittorrent'in dinleme
# portunu ANINDA gunceller - elle hicbir sey yapman gerekmiyor.
- VPN_PORT_FORWARDING=on
- VPN_PORT_FORWARDING_PROVIDER=protonvpn
- VPN_PORT_FORWARDING_UP_COMMAND=/bin/sh -c 'wget -O- -nv --retry-connrefused --post-data "json={\"listen_port\":{{PORTS}}}" http://127.0.0.1:61235/api/v2/app/setPreferences'
ports:
# Sadece WebUI'yi host'a aciyoruz. Torrent peer portu artik ProtonVPN'in
# NAT-PMP ile atadigi DINAMIK port - bu, VPN tunelinin (tun0) uzerinden
# geliyor, Docker'in host network'unden degil, o yuzden burada ayrica
# bir port yayinlamaya gerek yok (Gluetun kendi firewall'unda otomatik
# izin veriyor).
- 61235:61235
volumes:
- ${APP_DATA_DIR}/data/gluetun:/gluetun
restart: unless-stopped
x-runtipi:
is_main: true
internal_port: 61235
qbittorrent:
image: lscr.io/linuxserver/qbittorrent:latest
container_name: qbittorrent
# Kendi agi yok, gluetun'un ag namespace'ini paylasiyor - tum
# trafik VPN tunelinden geciyor (kill switch qbittorrent'i de kapsar).
network_mode: "service:gluetun"
depends_on:
gluetun:
condition: service_healthy
environment:
- PUID=1000
- PGID=1000
- TZ=${TZ}
- WEBUI_PORT=61235
# Baslangic degeri - Gluetun VPN_PORT_FORWARDING_UP_COMMAND ile
# baglanir baglanmaz gercek atanan portla otomatik degistiriyor.
- TORRENTING_PORT=61234
volumes:
- ${APP_DATA_DIR}/data/config:/config
- ${APP_DATA_DIR}/data/downloads:/downloads
restart: unless-stopped
x-runtipi:
schema_version: 2