# Setting Up a Plex Media Server with Docker, OpenVPN, and Transmission with RSS Feeds

I want to own my data. Downloading instead of streaming is a start. This is how I set up a Plex server using NordVPN, Transmission, and Docker

The first thing we want to do is make sure that we have docker installed on the host machine you want to be running these services.

docker --version


If you do not get a version number, be sure to install docker.

Next, we need to start the transmission server but only run the torrent server when it is connected to OpenVPN, using the NordVPN service.

All of that sounds hard but thankfully someone has created a Docker image that does just that!

You can get it going with the following bash command

#!/bin/bash

# https://github.com/haugene/docker-transmission-openvpn

-v $PWD/data:/data \ -v /etc/localtime:/etc/localtime:ro \ -e CREATE_TUN_DEVICE=true \ -e OPENVPN_PROVIDER=NordVPN \ -e OPENVPN_USERNAME=my_username \ -e OPENVPN_PASSWORD=my_password \ -e LOCAL_NETWORK=192.168.0.0/16 \ --log-driver json-file \ --log-opt max-size=10m \ -p 9091:9091 \ haugene/transmission-openvpn  I like to keep these as .sh files and I would put that as start_open_vpn_transmission.sh and give it the ability to be ran chmod +x start_open_vpn_transmission.sh  and then run it ./start_open_vpn+transmission.sh  Now we can go to <IP OF SERVER>:9091, we should see the Transmission WebUI Once that is working, we need to start the service that will download the files based on RSS feeds. We will be using yts and showrss for that along with transmission-rss. Once again, there’s a Docker image for that! #!/bin/bash # https://github.com/nning/transmission-rss docker run -d \ -v$(pwd)/transmission-rss.conf:/etc/transmission-rss.conf \



and since that references some .conf file, let’s create that as well

feeds:


To test if this worked, you should be able to go to the Transmission WebUI and see that it has more videos to download, based on the results of the RSS feeds.

Finally, we need to start the Plex server. IN DOCKER of course.

#!/bin/bash
mkdir ~/plex

docker run \
-d \
--name plex \
--restart always \
-p 32400:32400/tcp \
-p 3005:3005/tcp \
-p 8324:8324/tcp \
-p 32469:32469/tcp \
-p 1900:1900/udp \
-p 32410:32410/udp \
-p 32412:32412/udp \
-p 32413:32413/udp \
-p 32414:32414/udp \
-e TZ="Europe/London" \
-e PLEX_CLAIM="claim-MY_CLAIM" \