Download Clients

Next, I created the containers for the download clients, adding network_mode: container:gluetun and then adding the ports to the gluetun compose file. I also gave both containers access to the torrents mount so they would place files so that the arr's could see them.

Deluge:

services:
  deluge:
    image: lscr.io/linuxserver/deluge:latest
    container_name: deluge
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=America/New_York
      - DELUGE_LOGLEVEL=error
    volumes:
      - /mnt/torrents:/torrents
      - /var/lib/deluge:/config
    network_mode: container:gluetun
    restart: unless-stopped

SABnzbd:

services:
  sabnzbd:
    image: lscr.io/linuxserver/sabnzbd:latest
    container_name: sabnzbd
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=America/New_York
    volumes:
      - /mnt/torrents:/torrents
      - /var/lib/sabnzbd:/config
    network_mode: container:gluetun
    restart: unless-stopped
networks: {}

After adding the ports to the gluetun container, the compose file now looks like this:

services:
  gluetun:
    image: qmcgaw/gluetun
    container_name: gluetun
    cap_add:
      - NET_ADMIN
    ports:
      - 8888:8888/tcp
      - 8388:8388
      - 8112:8112 #deluge webui
      - 6881:6881 #deluge inbound torrent traffic
      - 9080:9080 #sabnzb
    volumes:
      - /var/lib/gluetun:/gluetun
    environment:
      - VPN_SERVICE_PROVIDER=mullvad
      - VPN_TYPE=wireguard
      - WIREGUARD_PRIVATE_KEY=provided by mullvad
      - WIREGUARD_ADDRESSES=provided by mullvad
      - SERVER_COUNTRIES=USA
      - TZ=America/New_York
      - UPDATER_PERIOD=24h
      - UNBLOCK=usenetserver.com
      - FIREWALL_OUTBOUND_SUBNETS=192.168.0.0/24
    devices:
      - /dev/net/tun:/dev/net/tun
    restart: unless-stopped
networks: {}