
Torrent
🚀 Deployed
I used various torrent clients but qBittorrent is the easiest yet complete one.
It’s used by applications in Media-Center to download media.
The stack consists of :
- qBittorrent : The actual torrent client
Gluetun : A VPN client in a docker container
qBittorrent network traffic is routed through the gluetun container and thus through our VPN of choice (ProtonVPN).
services: qbittorrent: container_name: torrent_qbittorrent image: ghcr.io/hotio/qbittorrent:release-5.0.5 ports: - 8086:8080 environment: - PUID=0 - PGID=0 - UMASK=002 - TZ=Etc/UTC - WEBUI_PORTS=8080/tcp,8080/udp - VPN_ENABLED=true - VPN_CONF=wg0 - VPN_PROVIDER=proton - VPN_AUTO_PORT_FORWARD=true - VPN_LAN_NETWORK=192.168.31.0/24,100.64.0.0/10 - VPN_KEEP_LOCAL_DNS=false - VPN_FIREWALL_TYPE=auto - VPN_HEALTHCHECK_ENABLED=false - PRIVOXY_ENABLED=false - UNBOUND_ENABLED=false volumes: - /data/apps/torrent/config:/config - /data/apps/media-center/torrents:/data/apps/media-center/torrents cap_add: - NET_ADMIN sysctls: - net.ipv4.conf.all.src_valid_mark=1 - net.ipv6.conf.all.disable_ipv6=1 devices: - /dev/net/tun:/dev/net/tun networks: - homelab labels: - traefik.enable=true - traefik.http.routers.qbittorrent.rule=Host(`torrent.zrx.sh`) - traefik.http.services.qbittorrent.loadbalancer.server.port=8086 - traefik.http.routers.qbittorrent.middlewares=homelab-whitelist@file - traefik.http.routers.qbittorrent.tls=true - traefik.http.routers.qbittorrent.tls.certresolver=production - traefik.http.routers.qbittorrent.tls.domains[0].main=zrx.sh - traefik.http.routers.qbittorrent.tls.domains[0].sans=*.zrx.shnetworks: homelab: external: true