diff --git a/README.md b/README.md index d5451fa6cb..b734affdb5 100644 --- a/README.md +++ b/README.md @@ -168,3 +168,43 @@ The container exposes /config as a volume. This is the directory where the suppl If you have transmission authentication enabled and want scripts in another container to access and control the transmission-daemon, this can be a handy way to access the credentials. For example, another container may pause or restrict transmission speeds while the server is streaming video. + +## Make it work on Synology NAS +Here are the steps to run it on a Synology NAS (Tested on DSM 6) : + +- Connect as _admin_ to your Synology SSH +- Switch to root with command `sudo su -` +- Enter your _admin_ password when prompted +- Create a TUN.sh file anywhere in your synology file system by typing `vim /volume1/foldername/TUN.sh` +replacing _foldername_ with any folder you created on your Synology +- Paste @timkelty 's script : +``` +#!/bin/sh + +# Create the necessary file structure for /dev/net/tun +if ( [ ! -c /dev/net/tun ] ); then + if ( [ ! -d /dev/net ] ); then + mkdir -m 755 /dev/net + fi + mknod /dev/net/tun c 10 200 +fi + +# Load the tun module if not already loaded +if ( !(lsmod | grep -q "^tun\s") ); then + insmod /lib/modules/tun.ko +fi +``` +- Save the file with [escape] + `:wq!` +- Go in the folder containing your script : `cd /volume1/foldername/` +- Check permission with `chmod 0755 TUN.sh` +- Run it with `./TUN.sh` +- Create the DNS config file by typing `vim /volume1/foldername/resolv.conf` +- Paste the following lines : +``` +nameserver 8.8.8.8 +nameserver 8.8.4.4 +``` +- Save the file with [escape] + `:wq!` +- Create your docker container with a classic command like `docker run --privileged -d -v /volume1/foldername/resolv.conf:/etc/resolv.conf -v /volume1/yourpath/:/data -e "OPENVPN_PROVIDER=PIA" -e "OPENVPN_CONFIG=Netherlands" -e "OPENVPN_USERNAME=XXXXX" -e "OPENVPN_PASSWORD=XXXXX" -p 9091:9091 haugene/transmission-openvpn -name TransmissionVPN` +- To make it work after a nas restart, create an automated task in your synology web interface : go to **Settings Panel > Task Scheduler ** create a new task that run `/volume1/foldername/TUN.sh` as root (select '_root_' in 'user' selectbox). This task will start module that permit the container to run, you can make a task that run on startup. These kind of task doesn't work on my nas so I just made a task that run every minute. +- Enjoy