Add systemd integration notes to README
This commit is contained in:
48
README.md
48
README.md
@@ -170,6 +170,54 @@ If you have transmission authentication enabled and want scripts in another cont
|
|||||||
control the transmission-daemon, this can be a handy way to access the credentials.
|
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.
|
For example, another container may pause or restrict transmission speeds while the server is streaming video.
|
||||||
|
|
||||||
|
## systemd Integration
|
||||||
|
|
||||||
|
On many modern linux systems, including Ubuntu, systemd can be used to start the transmission-openvpn at boot time, and restart it after any failure.
|
||||||
|
|
||||||
|
Save the following as `/etc/systemd/system/transmission-openvpn.service`.
|
||||||
|
|
||||||
|
It's assuming that there is a `bittorrent` user set up with a home directory at `/home/bittorrent/`. The data directory will be mounted at `/home/bittorrent/data/`, and OpenVPN is set to exit if there is a connection failure. OpenVPN exiting triggers the container to also exit, then the `Restart=always` definition in the `transmission-openvpn.service` file tells systems to restart things again.
|
||||||
|
|
||||||
|
```
|
||||||
|
[Unit]
|
||||||
|
Description=haugene/transmission-openvpn docker container
|
||||||
|
After=docker.service
|
||||||
|
Requires=docker.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
User=bittorrent
|
||||||
|
TimeoutStartSec=0
|
||||||
|
ExecStartPre=-/usr/bin/docker kill transmission-openvpn
|
||||||
|
ExecStartPre=-/usr/bin/docker rm transmission-openvpn
|
||||||
|
ExecStartPre=/usr/bin/docker pull haugene/transmission-openvpn
|
||||||
|
ExecStart=/usr/bin/docker run \
|
||||||
|
--name transmission-openvpn \
|
||||||
|
--privileged \
|
||||||
|
-v /home/bittorrent/data/:/data \
|
||||||
|
-e "OPENVPN_PROVIDER=TORGUARD" \
|
||||||
|
-e "OPENVPN_USERNAME=bittorrent@example.com" \
|
||||||
|
-e "OPENVPN_PASSWORD=hunter2" \
|
||||||
|
-e "OPENVPN_CONFIG=Netherlands" \
|
||||||
|
-e "OPENVPN_OPTS=--inactive 3600 --ping 10 --ping-exit 60" \
|
||||||
|
-e "TRANSMISSION_UMASK=0" \
|
||||||
|
-p 9091:9091 \
|
||||||
|
--dns 8.8.8.8 \
|
||||||
|
--dns 8.8.4.4 \
|
||||||
|
haugene/transmission-openvpn
|
||||||
|
Restart=always
|
||||||
|
RestartSec=5
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
```
|
||||||
|
|
||||||
|
Then enable and start the new service with:
|
||||||
|
|
||||||
|
```
|
||||||
|
$ sudo systemctl enable /etc/systemd/system/transmission-openvpn.service
|
||||||
|
$ sudo systemctl restart transmission-openvpn.service
|
||||||
|
```
|
||||||
|
|
||||||
## Make it work on Synology NAS
|
## Make it work on Synology NAS
|
||||||
Here are the steps to run it on a Synology NAS (Tested on DSM 6) :
|
Here are the steps to run it on a Synology NAS (Tested on DSM 6) :
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user