October 7, 2025Oct 7 I've had my server up and running since 2017 with virtually no issues. Full disclosure, I haven't used it much in the last 2-3 years, but it was working. Recently, I began downloading torrent files again, which was the original reason i set up the server. I was using activ-transmission VPN with no issues. Two weeks ago, my array appeared to go into "read-only" mode, meaning I couldn't copy files from my torrent folder to any of my share folders in Windows. The torrent folder is on the cache drive, the shares are on the array.As part of the troubleshooting, I copied the appdata and system folders from my cache drive directly to the array, reformatted my cache drive, and then moved everything back. Doing this removed all of the docker containers, so I set about trying to reinstall them. I was able to get the Plex docker back up and running, though all of my libraries were gone. Just the libraries themselves, not the files. Activ-transmission vpn is no longer available in the apps, so I installed haugene transmission-vpn, but I can't get the GUI to work. I keep getting a 404: not found, and I'm stuck. I configured the docker with my PIA credentals and pointed it to my local network, but I'm not sure what else to do. I've read through all the documentation, and nothing seems to be off with the config. Please understand, I set this up many years ago and have no recollection of how. Also, if anyone has any insight on the original read-only issue, that would be appreciated also because that's still an issue.
October 7, 2025Oct 7 Community Expert with what vpn provider?esential the older docker image and data that had your previous data was wiped when you cleared the chage drive. and the template didn't have nor contain some of the data. as docker temples are on the flash drive unless you ran them a different way like compose / docker run user script lines...Review:https://bmartino1.weebly.com/guide-dockernetworks.htmlas you may need 2 separate dockers now and some docker network know how to use the vpn docker...you may need to use a side vpn connector docker and use linux server transmission and us the gluten vpn docker to connect to the vpn provider and have transmission container network connect to have transmission use the vpn...or find a compatible transmission/vpn docker...or use a LXC. (what I would recommend...) install debain and connect the lxc to your vpn provider and install vnc / transmission and use a web vnc connections...and follow your vpn provides documentation on install...the point being is without knowing your vpn provider i can't point you to a good solution to move forward.If its a issue with a docker imagehttps://hub.docker.com/r/activ/arch-transmissionvpnin the existing template change the tag to activ/arch-transmissionvpn:2.0
October 7, 2025Oct 7 Author 5 minutes ago, bmartino1 said:with what vpn provider?esential the older docker image and data that had your previous data was wiped when you cleared the chage drive. and the template didn't have nor contain some of the data. as docker temples are on the flash drive unless you ran them a different way like compose / docker run user script lines...Review:https://bmartino1.weebly.com/guide-dockernetworks.htmlas you may need 2 separate dockers now and some docker network know how to use the vpn docker...you may need to use a side vpn connector docker and use linux server transmission and us the gluten vpn docker to connect to the vpn provider and have transmission container network connect to have transmission use the vpn...or find a compatible transmission/vpn docker...or use a LXC. (what I would recommend...) install debain and connect the lxc to your vpn provider and install vnc / transmission and use a web vnc connections...and follow your vpn provides documentation on install...the point being is without knowing your vpn provider i can't point you to a good solution to move forward.If its a issue with a docker imagehttps://hub.docker.com/r/activ/arch-transmissionvpnin the existing template change the tag toactiv/arch-transmissionvpn:2.0PIA, which is what I've been using.
October 7, 2025Oct 7 Community Expert Thank you for clarifing. I would recomend using docker compose (more to easliy add and use mutple networks... there’s a solid all-in-one: haugene/transmission-openvpn. It supports PIA (OpenVPN or WireGuard), does automatic port-forwarding for PIA regions that allow it, and exposes Transmission’s web UI.Below are two clean ways to run Transmission behind PIA. Pick A (two-container) if you specifically want to use that PIA container you linked; pick B (all-in-one) if you want simpler ops.A) Two-container setupitsdaspecialk/pia-openvpn (VPN) + linuxserver/transmission sharing its networkhttps://hub.docker.com/r/itsdaspecialk/pia-openvpn/and this dockerhttps://hub.docker.com/r/linuxserver/transmissionstep 1 setup and make ports for use with the PIA VPNDokcer run (can be made into custom tempatles)# 1) PIA OpenVPN container (owns the network + the host port mappings) docker run -d \ --name pia \ --cap-add=NET_ADMIN \ --device /dev/net/tun \ -e OPENVPN_USERNAME='PIA_USERNAME' \ -e OPENVPN_PASSWORD='PIA_PASSWORD' \ -e OPENVPN_CONFIG='*.ovpn or region name' \ -e LOCAL_NETWORK='192.168.1.0/24' \ -p 9091:9091 \ # Transmission web UI (mapped on the VPN container) -p 51413:51413 \ # BitTorrent TCP -p 51413:51413/udp \ # BitTorrent UDP (DHT/Peers) -v /path/to/openvpn:/etc/openvpn \ -v /path/to/pia-config:/config \ --restart unless-stopped \ itsdaspecialk/pia-openvpn:latest # 2) Transmission shares the VPN container’s namespace (no ports on this one) docker run -d \ --name=transmission \ --network=container:pia \ -e PUID=1000 -e PGID=1000 \ -e TZ="America/Chicago" \ -e TRANSMISSION_WEB_HOME=/combustion-release \ -v /path/to/downloads:/downloads \ -v /path/to/watch:/watch \ -v /path/to/transmission-config:/config \ --restart unless-stopped \ lscr.io/linuxserver/transmission:latest or use the docker compose plugin and paste and edit the docker compose file version: "3.8" services: pia: image: itsdaspecialk/pia-openvpn:latest container_name: pia cap_add: [ "NET_ADMIN" ] devices: [ "/dev/net/tun:/dev/net/tun" ] environment: OPENVPN_USERNAME: "PIA_USERNAME" OPENVPN_PASSWORD: "PIA_PASSWORD" OPENVPN_CONFIG: "region_or_ovpn_file" LOCAL_NETWORK: "192.168.1.0/24" ports: - "9091:9091" - "51413:51413" - "51413:51413/udp" volumes: - /path/to/openvpn:/etc/openvpn - /path/to/pia-config:/config restart: unless-stopped transmission: image: lscr.io/linuxserver/transmission:latest container_name: transmission network_mode: "container:pia" environment: PUID: "1000" PGID: "1000" TZ: "America/Chicago" TRANSMISSION_WEB_HOME: "/combustion-release" volumes: - /path/to/downloads:/downloads - /path/to/watch:/watch - /path/to/transmission-config:/config restart: unless-stopped If you reviewed the guid site I made...How it worksYou only expose ports on pia (the VPN container). Hit Transmission at http://HOST_IP:9091.Make sure your PIA region supports port forwarding; otherwise peers can’t connect inbound on 51413.Keep LOCAL_NETWORK to your LAN so you can reach the web UI from inside your network.B) All-in-one (simplest): haugene/transmission-openvpnThis is the usual “Transmission + PIA VPN in one container” approach. It handles PIA auth, OpenVPN, and port forwarding automatically.*But loooks like you tried and had some issues?docekr run that can be made into a unraid template: docker run -d \ --name=transmission-vpn \ --cap-add=NET_ADMIN \ --device=/dev/net/tun \ -e OPENVPN_PROVIDER=PIA \ -e OPENVPN_USERNAME='PIA_USERNAME' \ -e OPENVPN_PASSWORD='PIA_PASSWORD' \ -e OPENVPN_CONFIG='ca_montreal' \ # use a PIA region that supports PF -e OPENVPN_OPTS='--inactive 3600 --ping 10 --ping-exit 60' \ -e LOCAL_NETWORK='192.168.1.0/24' \ -e TRANSMISSION_RATIO_LIMIT=0 \ -e TRANSMISSION_RATIO_LIMIT_ENABLED=false \ -e TZ='America/Chicago' \ -p 9091:9091 \ -p 51413:51413 \ -p 51413:51413/udp \ -v /path/to/data:/data \ -v /path/to/config:/config \ --restart unless-stopped \ haugene/transmission-openvpn:latest or use compose via the compose plugin make the necessay edits: version: "3.8" services: transmission-vpn: image: haugene/transmission-openvpn:latest container_name: transmission-vpn cap_add: [ "NET_ADMIN" ] devices: [ "/dev/net/tun:/dev/net/tun" ] environment: OPENVPN_PROVIDER: "PIA" OPENVPN_USERNAME: "PIA_USERNAME" OPENVPN_PASSWORD: "PIA_PASSWORD" OPENVPN_CONFIG: "ca_montreal" # pick a PF-enabled region LOCAL_NETWORK: "192.168.1.0/24" TZ: "America/Chicago" TRANSMISSION_RATIO_LIMIT: "0" TRANSMISSION_RATIO_LIMIT_ENABLED: "false" ports: - "9091:9091" - "51413:51413" - "51413:51413/udp" volumes: - /path/to/data:/data - /path/to/config:/config restart: unless-stopped Quick checks & tipsVerify egress via VPNdocker exec -it transmission-vpn curl -s https://ifconfig.io Should show a PIA IP.Port forwarding: With PIA, only certain regions support PF. Choose one that does (e.g., many folks use CA/Montreal; the exact list changes). The haugene image auto-fetches the PF and sets Transmission’s peer port.RPC/Web UI: http://HOST_IP:9091. If you set TRANSMISSION_RPC_USERNAME/PASSWORD, the image will enforce auth.Unraid: Same configs work via the GUI—just mirror the env vars, add /dev/net/tun, and NET_ADMIN.If you want the most painless route, go with B (haugene/transmission-openvpn). If you specifically want modularity or to reuse itsdaspecialk/pia-openvpn for multiple apps, go with A and put each app on --network=container:pia.
October 7, 2025Oct 7 Community Expert otherwise you may need to contact PIA support for how to configure and/or generate a OPVN file for your vpn connectionhttps://helpdesk.privateinternetaccess.com/kb/articles/linux-setting-up-manual-openvpn-connection-through-the-terminal
October 8, 2025Oct 8 Author 17 hours ago, bmartino1 said:Thank you for clarifing. I would recomend using docker compose (more to easliy add and use mutple networks... there’s a solid all-in-one: haugene/transmission-openvpn. It supports PIA (OpenVPN or WireGuard), does automatic port-forwarding for PIA regions that allow it, and exposes Transmission’s web UI.Below are two clean ways to run Transmission behind PIA. Pick A (two-container) if you specifically want to use that PIA container you linked; pick B (all-in-one) if you want simpler ops.A) Two-container setupitsdaspecialk/pia-openvpn (VPN) + linuxserver/transmission sharing its networkhttps://hub.docker.com/r/itsdaspecialk/pia-openvpn/and this dockerhttps://hub.docker.com/r/linuxserver/transmissionstep 1 setup and make ports for use with the PIA VPNDokcer run (can be made into custom tempatles)# 1) PIA OpenVPN container (owns the network + the host port mappings) docker run -d \ --name pia \ --cap-add=NET_ADMIN \ --device /dev/net/tun \ -e OPENVPN_USERNAME='PIA_USERNAME' \ -e OPENVPN_PASSWORD='PIA_PASSWORD' \ -e OPENVPN_CONFIG='*.ovpn or region name' \ -e LOCAL_NETWORK='192.168.1.0/24' \ -p 9091:9091 \ # Transmission web UI (mapped on the VPN container) -p 51413:51413 \ # BitTorrent TCP -p 51413:51413/udp \ # BitTorrent UDP (DHT/Peers) -v /path/to/openvpn:/etc/openvpn \ -v /path/to/pia-config:/config \ --restart unless-stopped \ itsdaspecialk/pia-openvpn:latest # 2) Transmission shares the VPN container’s namespace (no ports on this one) docker run -d \ --name=transmission \ --network=container:pia \ -e PUID=1000 -e PGID=1000 \ -e TZ="America/Chicago" \ -e TRANSMISSION_WEB_HOME=/combustion-release \ -v /path/to/downloads:/downloads \ -v /path/to/watch:/watch \ -v /path/to/transmission-config:/config \ --restart unless-stopped \ lscr.io/linuxserver/transmission:latest or use the docker compose plugin and paste and edit the docker compose file version: "3.8"services:pia: image: itsdaspecialk/pia-openvpn:latest container_name: pia cap_add: [ "NET_ADMIN" ] devices: [ "/dev/net/tun:/dev/net/tun" ] environment: OPENVPN_USERNAME: "PIA_USERNAME" OPENVPN_PASSWORD: "PIA_PASSWORD" OPENVPN_CONFIG: "region_or_ovpn_file" LOCAL_NETWORK: "192.168.1.0/24" ports: - "9091:9091" - "51413:51413" - "51413:51413/udp" volumes: - /path/to/openvpn:/etc/openvpn - /path/to/pia-config:/config restart: unless-stopped transmission: image: lscr.io/linuxserver/transmission:latest container_name: transmission network_mode: "container:pia" environment: PUID: "1000" PGID: "1000" TZ: "America/Chicago" TRANSMISSION_WEB_HOME: "/combustion-release" volumes: - /path/to/downloads:/downloads - /path/to/watch:/watch - /path/to/transmission-config:/config restart: unless-stopped If you reviewed the guid site I made...How it worksYou only expose ports on pia (the VPN container). Hit Transmission at http://HOST_IP:9091.Make sure your PIA region supports port forwarding; otherwise peers can’t connect inbound on 51413.Keep LOCAL_NETWORK to your LAN so you can reach the web UI from inside your network.B) All-in-one (simplest): haugene/transmission-openvpnThis is the usual “Transmission + PIA VPN in one container” approach. It handles PIA auth, OpenVPN, and port forwarding automatically.*But loooks like you tried and had some issues?docekr run that can be made into a unraid template: docker run -d \ --name=transmission-vpn \ --cap-add=NET_ADMIN \ --device=/dev/net/tun \ -e OPENVPN_PROVIDER=PIA \ 4801 -e OPENVPN_PASSWORD='PIA_PASSWORD' \ -e OPENVPN_CONFIG='ca_montreal' \ # use a PIA region that supports PF -e OPENVPN_OPTS='--inactive 3600 --ping 10 --ping-exit 60' \ -e LOCAL_NETWORK='192.168.1.0/24' \ -e TRANSMISSION_RATIO_LIMIT=0 \ -e TRANSMISSION_RATIO_LIMIT_ENABLED=false \ -e TZ='America/Chicago' \ -p 9091:9091 \ -p 51413:51413 \ -p 51413:51413/udp \ -v /path/to/data:/data \ -v /path/to/config:/config \ --restart unless-stopped \ haugene/transmission-openvpn:latest or use compose via the compose plugin make the necessay edits: version: "3.8"services:transmission-vpn: image: haugene/transmission-openvpn:latest container_name: transmission-vpn cap_add: [ "NET_ADMIN" ] devices: [ "/dev/net/tun:/dev/net/tun" ] environment: OPENVPN_PROVIDER: "PIA" OPENVPN_USERNAME: "PIA_USERNAME" OPENVPN_PASSWORD: "PIA_PASSWORD" OPENVPN_CONFIG: "ca_montreal" # pick a PF-enabled region LOCAL_NETWORK: "192.168.1.0/24" TZ: "America/Chicago" TRANSMISSION_RATIO_LIMIT: "0" TRANSMISSION_RATIO_LIMIT_ENABLED: "false" ports: - "9091:9091" - "51413:51413" - "51413:51413/udp" volumes: - /path/to/data:/data - /path/to/config:/config restart: unless-stoppedQuick checks & tipsVerify egress via VPNdocker exec -it transmission-vpn curl -s https://ifconfig.io Should show a PIA IP.Port forwarding: With PIA, only certain regions support PF. Choose one that does (e.g., many folks use CA/Montreal; the exact list changes). The haugene image auto-fetches the PF and sets Transmission’s peer port.RPC/Web UI: http://HOST_IP:9091. If you set TRANSMISSION_RPC_USERNAME/PASSWORD, the image will enforce auth.Unraid: Same configs work via the GUI—just mirror the env vars, add /dev/net/tun, and NET_ADMIN.If you want the most painless route, go with B (haugene/transmission-openvpn). If you specifically want modularity or to reuse itsdaspecialk/I used option B and the unraid template. It seems to be up and running, except I can't find where the data is being downloaded. I left these as they were, but I don't know where that data folder is. I've looked in every folder and I'm not sure how to change it to a folder I recognize. I apologize for sounding like a total noob. I used to work in IT and know this stuff but I switched careers about 15 years ago and have apparently forgotten everything. -v /path/to/data:/data \ -v /path/to/config:/config \
October 8, 2025Oct 8 Community Expert Solution ok no worries. I assume your using this CA template the:the above is example as the tempate essential builds a docker run lineyou may need to click the advance togle at the top right some setting and options are only avliable with that togleso in the above docker run shared. I gave exampels not direct paths.the bare mini as well.so the data folder should be located to /mnt/user/T_Media/Torrent/ unless you set its pathand the config folder path doesn't exist in the current CA templateeven with the advance toggle and show more settings.I was pulling data form there docker hub / git hub.The have adatioal support forum found herehttps://forums.unraid.net/topic/60143-support-clowryms-docker-repository/the template is also using the dev taggithub:GitHubGitHub - haugene/docker-transmission-openvpn: Docker cont...Docker container running Transmission torrent client with WebUI over an OpenVPN tunnel - haugene/docker-transmission-openvpnDocker hub:https://hub.docker.com/r/haugene/transmission-openvpn/so without it int he tempalte its inside teh docer via termail cd /config/your/config/path/:/config \you will have to edit the repositry to a named tagand add that path:as ths is the latest image:sha256:ecc30da79114d801295fd10a5dbaf8640b19707d012fb55be0671ddbe0503037haugene/transmission-openvpn:latest
October 8, 2025Oct 8 Community Expert per the CA template support forumTransmission_VPN - Docker container which runs Transmission torrent client with WebUI while connecting to OpenVPN. It also will update the open port every hour for those using PIA only as their provider. Based on Haugene's Currently the Container is set up for PIA with all the available OpenVPN configs listed as defaults. If your provider is someone else then the defaults need to be changed to the appropriate OpenVPN config names found hereAnyone having issues with Watch folder permission issues, please read this POST & this POST
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.