Dummy Guide for docker-transmission-openvpn + Synology Container Manager + PIA VPN #2845
Replies: 5 comments 4 replies
-
How are you enabling the Transmission to pick the Dedicated IP? Is there anywhere you are configuring the Access Token? Also, why would you need a dedicated IP if you are able to port forward on any of the Toronto or Ontario servers? |
Beta Was this translation helpful? Give feedback.
-
Figured it out. I was an idiot. I was not on the right local network and has the wrong CIDR notation for the network. I had to change it to LOCAL_NETWORK=192.1068.1.0 /24 to make it work. I keep getting this when I set this up... Complete log from one run. TRANSMISSION_HOME is currently set to: /config/transmission-home Creating TUN device /dev/net/tun Using OpenVPN provider: PIA Running with VPN_CONFIG_SOURCE auto Provider PIA has a bundled setup script. Defaulting to internal config Executing setup script for PIA Downloading OpenVPN config bundle openvpn into temporary file /tmp/tmp.Bhkdxl2rnp Extract OpenVPN config bundle into PIA directory /etc/openvpn/pia Starting OpenVPN using config ca_vancouver.ovpn Modifying /etc/openvpn/pia/ca_vancouver.ovpn for best behaviour in this container Modification: Point auth-user-pass option to the username/password file Modification: Change ca certificate path Modification: Change ping options Modification: Update/set resolv-retry to 15 seconds Modification: Change tls-crypt keyfile path Modification: Set output verbosity to 3 Modification: Remap SIGUSR1 signal to SIGTERM, avoid OpenVPN restart loop Modification: Updating status for config failure detection Setting OpenVPN credentials... adding route to local network 192.168.15.0/16 via 172.25.0.1 dev eth0 RTNETLINK answers: Invalid argument ` My Docker compose... (Could not get docker run to run it... It gives me a docker: invalid reference format.
Any thoughts? |
Beta Was this translation helpful? Give feedback.
-
Seriously, WOW!!!!! And thanks, @metaclam !!! Ever since I began self-hosting a few years ago, I've used a qbittorrent docker image that also managed an openvpn connection to PIA. Straightforward and sweet. Until it abruptly stopped working six weeks ago. Since then I haven't been able to get any qbittorrent image to work with PIA (surprisingly common). Diagnosing the cause turned out to be beyond my skills, patience & willingness to throw time at the matter, so I tried Deluge (couldn't get it to play nice either), then settled on Transmission. I told myself I could overlook its minimalist UI if I could find an image of any torrent client that was reliable through PIA. But "reliable" turned out to be frustratingly and surprisingly elusive - I tried literally dozens of combinations of different images and scripts, and none were (reliable). Then tonight I stumbled across your excellent guide. It took me about a minute to turn your Your guide proved to be very useful indeed (and appreciated most warmly), even though my environment (Docker via Openmediavault on a Raspberry Pi) is quite different to your own. Apologies for all the exclamation marks, but I'm excited. Problem solved. Big win. Love your work. @metaclam rocks!! Thanks and very best regards Neil (Perth, Western Australia) |
Beta Was this translation helpful? Give feedback.
-
I am struggling to get the transmission web portal to show that my peer port is open so that I can seed back what I am leeching. I am running docker with haugene/transmission-openvpn:latest. I added port 51413 tcp and udp as port configuration for docker (my tranmission peer port) along with 9091 tcp. I am using PIA, ca_toronto as the server so port forwarding should be working. what am I doing wrong? |
Beta Was this translation helpful? Give feedback.
-
I noticed you mentioned using You also mentioned getting the I first tried solving the docker permission errors that I got when trying to run
This didn't work at first, but after adding my user to the Docker group in the Synology web UI Control Panel - I was able to run |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Here's a "dummy guide" to install and run Transmission in this docker OpenVPN container on a Synology NAS, with a port open for seeding.
This is from the perspective of a long-time Transmission user on the Mac, who is comfortable at a basic level on the command line and router configuration, but little to no experience with containers, NAS devices, or VPNs. Hopefully this is of use to others in similar situations. Some of what's below may be misguided or inaccurate or plagued by misnomers (and I welcome comments from the experienced!) but it worked for me in the end.
The goal, Issue, and starting point:
Having moved all seeding torrent files from Mac to a new NAS (on Shared Folders), I realized that it is possible to run Transmission itself off the NAS, thus not needing to keep my Mac on to seed, and freeing up the the resources on the Mac completely. Using a VPN was desired for security.
Main Points and Realizations
Read the Official Documentation
Before proceeding, read though the official quick start on this repo and the official documentation, in full. You will be utterly baffled but make an effort, and bookmark it for later.
Setting up PIA
Install this Docker Container
Make sure SSH is enabled in DSM
If you're migrating from running Transmission on your Mac, you can now copy your torrent and resume files, and blocklists, to these appropriate folders, after creating the structure as shown above. (Otherwise the container will create it at first start). FYI those files are here on your Mac: ~/Library/Application Support/Transmission. And you probably won't need it but what in most Transmisison installations is called settings.json is stored in a preference file on the Mac:
~/Library/Preferences/org.m0k.transmission.plist.
SSH into the Synology (with it's local IP on your LAN or local name, and using either root@ or the the admin user you just created, with the appropriate password). (see screenshot below for this and the next steps over SSH)
Type "id" to get the user & group IDs (UID,GID). Admin = 101. Note these down.
Copy and paste this docker run command (taken from the Quick Start here, with a --name flag for the name, into a text editor for temporary edits :
$ docker run --cap-add=NET_ADMIN -d --name=transmissionopenvpn \ -v /your/storage/path/:/data \ -v /your/config/path/:/config \ -e OPENVPN_PROVIDER=PIA \ -e OPENVPN_CONFIG=france \ -e OPENVPN_USERNAME=user \ -e OPENVPN_PASSWORD=pass \ -e LOCAL_NETWORK=192.168.0.0/16 \ --log-driver json-file \ --log-opt max-size=10m \ -p 9091:9091 \ haugene/transmission-openvpn
(Note: mapping trm-data this way turned out to be unneeded because "transmission-home" serves as the data folder, see below)
Configuration in Container Manager
Notes on Above Settings
At this point you should be able to start the container and it should "just work"!
Port Fowarding
Transmission Remote GUI:

Set all the settings for both "transmission options" and "application options"
It is most helpful to setup the "paths" tab in the "applications options", which map the container paths back to your actual Mac folders. This way you can move data locations with the standard Finder file-browser. Very useful. (Here it's sort of the opposite of the Volume Settings mappings in Container Manager. The path relative to the container is on the left, and the path relative to MacOS is on the right:
Beta Was this translation helpful? Give feedback.
All reactions