A few months ago my dad gave me a spare computer and after a bit of research I set out on creating a home media server. A couple of weeks later I realized this wasn't just a project, it was a full-blown hobby.
- Best Docker Bittorrent Client Installer
- Docker Client For Windows
- Docker Client Go
- Install Docker Client
- Docker Torrent Client
Docker build for kube-backup forked and modified from Container. Utorrent docker VPN: The best for the majority of people 2020 uTorrent-like BitTorrent Client uTorrent-like BitTorrent Client Docker - A. Using Transmission over OpenVPN VPN. 0 Going - solution, testers wanted you are ready, open option, if I install vpn — The VPN However, I -name vpn -dns VPN. 0 Going an OpenVPN nbsp 7 Docker on Windows, does qBittorrent client with get ready to setup.
After a ton of trial and error and a couple of hard drive wipes later, I've finally achieved a setup that I am truly happy with.
BitTorrent Web is an easy-to-use online torrent client that uses your default browser. If you already know where to find your torrent file, you can click on it or drag the torrent into the browser window of BitTorrent Web. Alternatively, you can use the search box at the top of the BitTorrent Web window to search for a torrent download. You may know what a Torrent VPN docker, or realistic sequestered Network, is; you probably don't use one. You exercise have to trust that your VPN service provider has your best interests at heart, because you're relying on them to secure your unification, keep everything encrypted, and to protect your activity from curiousness eyes.
My goal here is to document as much of it as possible, and be as available as I can in the comments here so I can help out anyone else starting their home server adventure!
By the end of this guide, you will have a server that lets you access your media wherever you want, automatically grabs movies and tv shows when they are requested via a web UI and is optimized for seeding.
Prerequisites
While all of the services we install will be running in Docker, this setup expects you are using Ubuntu 18.04. You can follow along, but when I start talking about mounting hard drives and writing bash scripts you may have to figure stuff out on your own!
Table of Contents
I. The Stack
II. Tips for managing your hard drives
III. Installing mhddfs (patched)
IV. Mounting Multiple Drives as One
V. Installing Docker
VI. Plex Config
VII. Transmission Config
VIII. Jackett Config
IX. Sonarr & Radarr Config
X. Ombi Config
Here's the stack we'll be using. There will be a section describing the installation and configuration for each one of these :)
Docker lets us run and isolate each of our services into a container. Everything for each of these services will live in the container except the configuration files which will live on our host.
Plex is a 'client-server media player system'. There are a few alternatives, but I chose Plex here because they have a client available on nearly every platform.
Transmission is a torrent client. I used to use Deluge but honestly found it pretty buggy and unreliable. Transmission also lets you easily run bash scripts whenever a torrent finishes which is huge.
Jackett is a tool that Sonarr and Radarr use to search indexers and trackers for torrents
Sonarr is a tool for automating and managing your TV library. It automates the process of searching for torrents, downloading them then 'moving' them to your library. It also checks RSS feeds to automatically download new shows as soon as they're uploaded! Radarr Is a fork of Sonarr that does all the same stuff but for Movies
Ombi is a super simple web UI for sending requests to Radarr and Sonarr
Tips for managing your hard drives
Here are some tips for how to manage your hard drives and data.
Optimizing for Ratios
I use private trackers to get my torrents, and this means I need to maintain a ratio. If you aren't familiar with this term, it basically means you should be uploading as much, if not more than you download.
The best way I've found to do this is to mount your drives directly to the machine that handles your downloads. This means you can configure Sonarr and Radarr to create hardlinks when a torrent finishes. With this enabled, a reference to the data will exist in your media directory and in your torrent directory so Transmission can continue seeding everything you download.
HDD vs SSD
Can also be written as Space vs. Reliability and Speed. I'm a freaking hoarder when it comes to media now, so I go with HDDs. This means I need to worry about my drives randomly dying.
If you roll with SSDs, I envy you and you should skip this next section!
HDD Backups vs. Redundancy
HDDs are very prone to randomly dying and you need to prepare for this. You can either set up an array of drives and use something like RAID, but you usually end up losing some space and it's not very easy to expand. I'm building my library from scratch so I want to be able to expand the space on my server as I download more media.
So instead, I mount all of my drives and then use mhddfs to treat them as one file system, and what's really cool is that it automatically fills up your drives in order.
update: I still haven't found a good way to keep backups of this data and am actually working on a way around this now.
Edit: I've gotten a lot of feedback on Reddit and it sounds like using either LVM or Mergerfs + Snapraid might be a better setup. If you are interested, check this post out by Linuxserver.io! I'll be doing that soon too :)
mhddfs contains a bug where you can occasionally run into a segfault error when mounting your drives. You'll want to install it via the patch in this repo, but it's a bit tricky.
The docker installation method is outdated and doesn't run so you'll have to install fakeroot
and run the command from the Readme.
It'll give you trouble about signing, ignore it and install the .deb package
To get your drives to mount on boot we have to edit your /etc/fstab
file. Add the following lines at the end of your file and replace the drive IDs with your own.
This mounts both drives on /mnt/hdd1
and /mnt/hdd2
and then mounts them together via mhddfs
on /mnt/media
. Now let’s set up our file system with a folder for torrents and a couple for our Libraries.
This is an easy one :)
I also like to keep my configs in one easy place in case I want to transfer them anywhere, so let’s create a folder to hold our docker container configs and create our docker-compose.yml
file
And add this to your docker-compose file. We will be filling in the services in the coming steps. If you are confused on how to add the services or how your file should look, here is a good resource on docker-compose.
This will start your Plex server on port 32400, and add the volumes /mnt
and ~/docker-services/plex/config
onto the container. If you are trying to move your current Plex configs over, run something like this
Note that plex is looking for your config directory to contain a single directory Library
. Look for that directory and copy it over.
If you are on something other than Ubuntu, refer to this page to find your configs.
Notice how we mount our torrent drive on the container in the same location as the host, rather than something like /downloads
(which is suggested over at linuxserver). This, plus the config below ensures Sonarr and Radarr send torrents to the right directory.
Once Transmission has started for the first time, it will make a settings.json
file for you (and will overwrite/reset it every time you run docker-compose up
). here are some changes you should make to the settings file. Come back here later to make these changes once everything is started, then run docker restart transmission
.
Best Docker Bittorrent Client Installer
Note: This get’s reset every time you create your container for some reason. Keep a backup!
See that script that get’s run once a torrent is done? This will search for any .rar files and decompress them in your torrents. Super helpful, let’s make that and then we’re done here!
This is super basic and just boots your Jackett service on port 9117. Doesn’t need much else!
Now, these guys are freaking TRICKY. Make sure those PUID
and GUID
match the ID for your user and group… and make sure that user has read-write permissions for /mnt/media
. Sonarr and Radarr are going to try to be creating folders and files in there when they copy or hard link files over.
If you are running into issues, check the logs of the docker container or the logs in the web UI. It should tell you exactly where it’s having trouble. Then log into the user you set it to run as an attempt the same actions. See whats going on first hand.
This will open Ombi on port 3579 but sadly they don’t have SSL support by default. I can create a post on adding LetsEncrypt to this setup if it get’s enough traction!
Run this command to boot up all your services! Remember to go back and update your Transmission settings after this.
You now have these services running locally. Go to their web UI’s and configure everything.
There is some final configuration you will need to do that is out of the scope of this tutorial, but I can help if need be.
You will have to
- Configure Jackett with your indexers
- Point Sonarr and Radarr to Jackett for indexers and Transmission as a download client
- Tell Sonarr and Radarr to download Movies and Shows folders you created above
- Tell Sonarr and Radarr to use Hardlinks instead of Copies in advanced settings
- Configure Ombi to use Sonarr and Radarr for requests
Now go invite your friends to your Plex server
Estimated reading time: 6 minutes
Docker Desktop for Windows is the Community version of Docker for Microsoft Windows.You can download Docker Desktop for Windows from Docker Hub.
This page contains information on installing Docker Desktop on Windows 10 Pro, Enterprise, and Education. If you are looking for information about installing Docker Desktop on Windows 10 Home, see Install Docker Desktop on Windows Home.
By downloading Docker Desktop, you agree to the terms of the Docker Software End User License Agreement and the Docker Data Processing Agreement.
What to know before you install
Docker Client For Windows
System Requirements
Windows 10 64-bit: Pro, Enterprise, or Education (Build 16299 or later).
For Windows 10 Home, see Install Docker Desktop on Windows Home.
- Hyper-V and Containers Windows features must be enabled.
The following hardware prerequisites are required to successfully run ClientHyper-V on Windows 10:
- 64 bit processor with Second Level Address Translation (SLAT)
- 4GB system RAM
- BIOS-level hardware virtualization support must be enabled in theBIOS settings. For more information, seeVirtualization.
Note: Docker supports Docker Desktop on Windows based on Microsoft’s support lifecycle for Windows 10 operating system. For more information, see the Windows lifecycle fact sheet.
What’s included in the installer
The Docker Desktop installation includes Docker Engine,Docker CLI client, Docker Compose,Notary,Kubernetes,and Credential Helper.
Containers and images created with Docker Desktop are shared between alluser accounts on machines where it is installed. This is because all Windowsaccounts use the same VM to build and run containers. Note that it is not possible to share containers and images between user accounts when using the Docker Desktop WSL 2 backend.
Nested virtualization scenarios, such as running Docker Desktop on aVMWare or Parallels instance might work, but there are no guarantees. Formore information, see Running Docker Desktop in nested virtualization scenarios.
About Windows containers
Looking for information on using Windows containers?
- Switch between Windows and Linux containersdescribes how you can toggle between Linux and Windows containers in Docker Desktop and points you to the tutorial mentioned above.
- Getting Started with Windows Containers (Lab)provides a tutorial on how to set up and run Windows containers on Windows 10, Windows Server 2016 and Windows Server 2019. It shows you how to use a MusicStore applicationwith Windows containers.
- Docker Container Platform for Windows articles and blogposts on the Docker website.
Install Docker Desktop on Windows
Double-click Docker Desktop Installer.exe to run the installer.
If you haven’t already downloaded the installer (
Docker Desktop Installer.exe
), you can get it from Docker Hub. It typically downloads to yourDownloads
folder, or you can run it from the recent downloads bar at the bottom of your web browser.When prompted, ensure the Enable Hyper-V Windows Features option is selected on the Configuration page.
Follow the instructions on the installation wizard to authorize the installer and proceed with the install.
When the installation is successful, click Close to complete the installation process.
If your admin account is different to your user account, you must add the user to the docker-users group. Run Computer Management as an administrator and navigate to Local Users and Groups > Groups > docker-users. Right-click to add the user to the group.Log out and log back in for the changes to take effect.
Start Docker Desktop
Docker Desktop does not start automatically after installation. To start Docker Desktop, search for Docker, and select Docker Desktop in the search results.
When the whale icon in the status bar stays steady, Docker Desktop is up-and-running, and is accessible from any terminal window.
If the whale icon is hidden in the Notifications area, click the up arrow on thetaskbar to show it. To learn more, see Docker Settings.
When the initialization is complete, Docker Desktop launches the onboarding tutorial. The tutorial includes a simple exercise to build an example Docker image, run it as a container, push and save the image to Docker Hub.
Congratulations! You are now successfully running Docker Desktop on Windows.
If you would like to rerun the tutorial, go to the Docker Desktop menu and select Learn.
Automatic updates
Starting with Docker Desktop 3.0.0, updates to Docker Desktop will be available automatically as delta updates from the previous version.
Docker Client Go
When an update is available, Docker Desktop automatically downloads it to your machine and displays an icon to indicate the availability of a newer version. All you need to do now is to click Update and restart from the Docker menu. This installs the latest update and restarts Docker Desktop for the changes to take effect.
Uninstall Docker Desktop
Install Docker Client
To uninstall Docker Desktop from your Windows machine:
- From the Windows Start menu, select Settings > Apps > Apps & features.
- Select Docker Desktop from the Apps & features list and then select Uninstall.
- Click Uninstall to confirm your selection.
Note: Uninstalling Docker Desktop will destroy Docker containers and images local to the machine and remove the files generated by the application.
Save and restore data
Docker Torrent Client
You can use the following procedure to save and restore images and container data. For example, if you want to reset your VM disk:
Use
docker save -o images.tar image1 [image2 ...]
to save any images you want to keep. See save in the Docker Engine command line reference.Use
docker export -o myContainner1.tar container1
to export containers you want to keep. See export in the Docker Engine command line reference.Uninstall the current version of Docker Desktop and install a different version, or reset your VM disk.
Use
docker load -i images.tar
to reload previously saved images. See load in the Docker Engine.Use
docker import -i myContainer1.tar
to create a file system image corresponding to the previously exported containers. See import in the Docker Engine.
For information on how to back up and restore data volumes, see Backup, restore, or migrate data volumes.
Where to go next
- Getting started introduces Docker Desktop for Windows.
- Get started with Docker is a tutorial that teaches you how todeploy a multi-service stack.
- Troubleshooting describes common problems, workarounds, andhow to get support.
- FAQs provides answers to frequently asked questions.
- Release notes lists component updates, new features, and improvements associated with Docker Desktop releases.