Spyke
selfhosted·Selfhostedbyayyo

Torrenting behind gluetun on zimaos?

I've bounced around running my server on many different OS options, I used proxmox with Ubuntu VMs and containers for a long time and did really like it but decided that for my tiny operation basically just trying to run Jellyfin and maybe a few other things like a Minecraft server, a simple one click deployment OS works good enough for me. Most of the time.

I've really been loving ZimaOS, management is so easy when you're only running a couple basic services like I am. But I decided I wanted to set up an arr stack to build up my media library easier and let others request things. I actually had this set up before on proxmox so it's not my first time.

The only problem is I can't for the life of me get qBittorrent to use my gluetun VPN with Mullvad, the fact that I can't directly edit the compose yml is killing me, because the options that I need to change should hypothetically be simple, but they just don't appear to even exist in the ZimaOS app settings gui. Has anyone gotten this to work?

View original on sh.itjust.works
lemmy.world

Gluetun and mullvad works for sure but, yes, you do need to modify some settings in the compose file. At least I did to get it work.

5
ayyoreply
sh.itjust.works

Yes my gluetun container is working properly, I just can't figure out how to edit the compose for the qbittorrent file to work behind gluetun. I've even exported a working qbittorrent app, uninstalled it, edited and uploaded a new compose file as a custom app but that doesn't seem to work for me.

4

This is a docker compose that I know works for qbittorrent behind gluetun.

I wonder if you are missing the "network_mode: service:gluetun" part?

 qbittorrent:
    image: lscr.io/linuxserver/qbittorrent:latest
    container_name: qbittorrent2
    network_mode: service:gluetun
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - WEBUI_PORT=9090
      - TORRENTING_PORT=6882
    volumes:
      - /path/to/qbittorrent/appdata:/config
      - /mnt/JellyFinContent/Data/torrents:/data/torrents #optional
# ports:
# - 9090:9090
# - 6882:6882
# - 6882:6882/udp
    depends_on:
      gluetun:
        condition: service_healthy
    restart: unless-stopped
2
sopuli.xyz

If you can't modify the compose file, you can try editing the container with Portainer. There you can change the network of gluetun qbittorrent to "container" and select gluetun.
That's how I did it when I was running CasaOS.

4

Using zimaOS, Umbrel, and other "one click install" OSs are very locked down when you need a more "complex" setup.

Hence they appeal to newcomers in the selfhost space. But you'll soon realize that they get in your way.

It's preferable to learn docker, docker compose from scratch if you really like to tinker and just setup a vanilla Debian server with it. That way you will not be tied down when you later want to do more elaborated setups. You will feel rewarded afterwards.

However, it does take time. It's up to you if its worth it.

1

Btw, I don't remember where, but the compose file do exist somewhere on the system.

1
lemmy.ml

If it helps, here's how I had my gluetun / transmission set up with mullvad (I've since moved to proton for port forwarding but I saved the mullvad config in case I needed to switch back):

services:
  gluetun:
    image: qmcgaw/gluetun:v3
    container_name: gluetun
    restart: always
    cap_add:
      - NET_ADMIN
    devices:
      - /dev/net/tun:/dev/net/tun
    volumes:
      - ./volumes/gluetun:/gluetun
    environment:
      - TZ=America/New_York
#      Mullvad
      - VPN_SERVICE_PROVIDER=mullvad
      - VPN_TYPE=wireguard
      - SERVER_COUNTRIES=USA
      - SERVER_CITIES=New York NY
      - WIREGUARD_PRIVATE_KEY=
      - WIREGUARD_ADDRESSES=x.x.x.x/32
      - UPDATER_PERIOD=24h
      - UPDATER_MIN_RATIO=0.1
      - UPDATER_VPN_SERVICE_PROVIDERS=mullvad,privado,protonvpn
    networks:
      - default
      - ingress

  transmission:
    image: linuxserver/transmission:latest
    container_name: transmission
    restart: always
    network_mode: "service:gluetun"
    environment:
      - PUID=0
      - PGID=0
      - TZ=America/New_York
    volumes:
      - ./volumes/transmission:/config
      - /volume1/Media:/media

  flood:
    image: jesec/flood:latest
    container_name: flood-sidecar
    restart: always
    command: --port 3000
    user: "0:0"
    network_mode: "service:gluetun"
    volumes:
      - ./volumes/transmission:/config
      - /volume1/Media:/media:ro
    environment:
      - TZ=America/New_York
      - HOME=/config
    labels:
      - com.centurylinklabs.watchtower.enable=true
      - "traefik.enable=true"
      - "traefik.http.routers.flood.rule=Host(`flood.example.com`)"
      - "traefik.http.services.flood.loadbalancer.server.port=3000"
      - "traefik.http.routers.flood.entrypoints=websecure"
      - "traefik.http.routers.flood.tls.certresolver=mytlschallenge"
      # This example uses "Selective Authentication"
      - "traefik.http.routers.flood.middlewares=oauth-middleware"

Idk how zimaos works, but the way to attach containers like this is with network_mode: "service:othercontainer" which might need them to be in the same compose file (the docs aren't clear).

Also note that you can't put any port mappings on a container using network_mode service, you have to put them on the other container that is handling networking since the first container is piggybacking off of the other and doesn't have its own networking.

2
sh.itjust.works

Idk how zimaos works, but the way to attach containers like this is with network_mode: "service:othercontainer" which might need them to be in the same compose file (the docs aren't clear).

network_mode: “container:gluetun”

Is how you can do it with separate compose files. And yes you’d need to map the ports in the gluetun compose file for any container you route through gluetun.

3

Ah cool, the docs made it sound like container: uses the container ID hash instead of the name so I wasn't sure how that works. I just put stuff like this in the same compose file since they're all closely related.

2

ZimaOS was a love/hate relationship for me. I setup a i7-7700K, 32GB DDR4, dualc10Gb SFP+, 24-bay SAS with x2 LSI 9300-16i raid cards.. Technically that's only 12 PCIe lanes (8 for x2 cards and 4 for NVMe's) but ZimaOS, even after paying for the premium upgrade (< 4 drives supported), couldn't handle large quantity disks with large capacity.. I had 10x 8TB drives and 8x 16TB drives, each in raid5 with a hot spare, and Zima would constantly become unresponsive with <50TB of data.

Idk if it was a power issue (850w PSU), raid card, or the OS, but I found myself struggling to keep it usable. I had attempted the arrs stacks but ran into issues. Idk if it was corrupted eventually, but I went back to my old server shell until I can resolve it and make it stable. Lemme tell you, moving 50TB+ across 2x 1GbE is excruciatingly slow... I was so thrilled to be on 10Gb for the short time 😢

1

You reached the end

Torrenting behind gluetun on zimaos? | Spyke