DEV Community

Rafael Magalhaes
Rafael Magalhaes

Posted on • Originally published at blog.rrrm.co.uk on

Home media server with plex, sonarr, radarr, qbitorrent and overseerr

Disclaimer: Neither the author of this article nor the publication nor the developers of codes used in this article condone or encourage downloading, sharing, seeding, or peering copyright material. International laws prohibit such activities which are illegal. This article serves educational purposes only.

How to set up a media server at home

  1. Jackett
  2. Qbittorrent
  3. Plex
  4. Sonarr
  5. Radarr
  6. Overseerr

I will be using windows but these steps can be followed for any OS after installing these services

Prerequisites

Make sure you have all applications installed correctly for your system

Jackett

Jackett works as a proxy server: it translates queries from apps (Sonarr, Radarr, SickRage, CouchPotato, Mylar, Lidarr, DuckieTV, qBittorrent, Nefarious etc.) into tracker-site-specific http queries, parses the html response, then sends results back to the requesting software. This allows for getting recent uploads (like RSS) and performing searches. Jackett is a single repository of maintained indexer scraping & translation logic – removing the burden from other apps.

If you installed Jackett correctly you can open it on localhost:9117 or your computers ip 192.168.1.30:9117 you can use this to access it across other devices in your network just make sure you enabled firewall rules

Let's start by adding an indexer to Jackett

Image description

Im going to add rarbg, search for rarbg or any indexer you want and click on the configure button

Image description

A popup will appear, click the okay button, you should now have a torrent site configured on jackett

Image description

Now we can add this to Sonarr and Raddarr

Qbittorent

Once you Qbitorrent installed we need to make sure its accessible over a web gui,
Open Qbittorent application go to settings -> web gui

Image description

You can leave the Ip address with * and feel free to change the port number if you already have an application running on that port, I will leave everything in default.
Don't forget to create a password and click apply,

Now to downloads settings on the left menu

Make sure subcategories are selected
Change the download path mine is C:/completed-torrents
Use another path for incompleted torrents C:/downloading-torrents
Make sure those folders exist

Image description

Now scroll to Run external program -> Run on torrent finished

Add this in the text field "C:\Program Files\WinRAR\WinRAR.exe" x -r -y "%D*.rar" "%D" this script will check if the torrent has any rar files and will automatically extract them for you. Make sure you have winrar installed

Image description

Click apply and go to BitTorrent setting

Image description

Enable torrent Queuing this will limit how many download you can have at once. Also, enable Seeding limits some private torrent sites require you to seed to a certain ratio with this you can make sure to stop seeding once that limit has been reached.

Click apply and then Ok and make sure you can reach Qbitorrent from a browser should be on port 8080 if you left it as default.
login with username and password and you should see the torrent on the browser now

Image description

Plex

Plex straight forward sign up go over the install process, install plex server add your folder location for movies and tv shows.

Make sure you have created a folder for movies and tvshows on your hard drive

Image description

Image description

Repeat the same process for TV shows

Image description

Click next then finish.

Sonarr

Sonarr monitors multiple feeds for new/upcoming episodes of your favourite shows and will download, sort and rename them. Imagine an ongoing weekly tv show Sonarr will automatically grab every new episode and will add it to your plex library.

Open sonarr in localhost:8989, in windows, make sure to enable firewall rules to access this in other devices on your network
Have a look here https://forums.sonarr.tv/t/cant-access-sonarr-on-a-networked-computer/11195/7

Configuring Indexers

Go to settings -> indexers

In here we are going to connect to jackett

Click on the + button to add a new indexer

Image description

As you can see there a few Indexeres available already, but we are going to use Torznab to communicate with our Jackett service

Image description

A special "all" indexer is available at /api/v2.0/indexers/all/results/torznab. It will query all configured indexers and return the combined results.

In the URL field use: http://127.0.0.1:9117/api/v2.0/indexers/all/results/torznab

Make sure on the categories dropdown to select everything in TV and same for Anime categories.

Go to Jackett and copy the API key in the top right and paste it in the API Key field in sonarr

name the indexer All and click on the save button

Download clients

Go to download clients in settings and add new download client

Image description

Select your Download client mine is qBittorrent so will go ahead and select that,
I will open another modal, enter a name and the username and password you set
If you changed the port number make sure to update that too

Image description

It also created a category called tv-sonarr which will put all your sonarr downloads inside a folder called tv-sonarr

Click save

Connect

Now go to settings -> Connect

We now need to connect to plex, so once a show has finished downloading this will notify plex to update the server, click on the add Connections button and select plex media serve

Image description

There are a few options here you can also use services like discord to notify you that a show as finished downloaded or been added to plex

Image description

Click on Authenticate with Plex.tv, make sure your host is correct then click save.

Media Management

Click on add Root folder, find a path to your tv show folder you set up for plex and add it

Image description

This should match the same directory in your plex media server for tv shows

Under Rename Episodes
Select the checkbox

Image description

This will rename every file to match that standard

Now click on Save changes at the top of Media Management

Profiles

If you go into settings -> profiles and delete the ones you do not want for example I want all my shows to be at least 1080p quality minimum, Delete all profiles, create a new one and select your desired resolutions, for me it will be 1080p/4k resolutions only

Image description

Click on save button

Adding a show

If you go into the series and click add new, search for the show you want, then select the show a modal should appear

I'm going to add House of Dragon

Image description

Root folder is being automatically selected since we have only one, and the same for profiles. We can click on start search for missing episodes, but I will do this manually for now since I don't want to download the entire season, click Add button

You can start a search by clicking on the season folder if its a completed show it will download a season pack or you can search per episode

Image description

I will search for Episode 1, this will enable a search on using our indexer from jackett.
If we open our torrent client we will see the show downloading

Image description

We can notice on Qbitorrent the category for this download is tv-sonarr

The amazing thing about Sonarr is it will now keep monitoring this Show so when season two is released it will automatically grab it and download the episode for you.

Once the download is complete it will be available on Plex

Image description

Now if you look in the completed-torrents folder and the tvshow folder, you have two copies at the moment, this is to ensure Sonarr doesn't interfere with the seeding on the torrent client side, because we told Qbittorrent to remove and delete files once it was reached a seed ratio of 1 or passed a certain time whichever comes first. This will ensure the torrent file is seeded and then it will be deleted not to take out space on the HDD

Radarr

Radarr is basically a fork of Sonarr but to manage movies, You can add upcoming movies and once it's available it will grab it and add it to plex

To set up Radarr repeat everything on Sonarr steps.

Overseerr

Overseerr is a request management and media discovery tool built to work with your existing Plex ecosystem.

Overseerr helps you find media you want to watch. With inline recommendations and suggestions, you will find yourself deeper and deeper in a rabbit hole of content you never knew you just had to have.

Overseerr connect with Sonarr and Radarr to facilitate media request all in one place

Quickest way to get started with overseer is to install it with docker compose


version: '3'

services:
  overseerr:
    image: sctx/overseerr:latest
    container_name: overseerr
    environment:
      - LOG_LEVEL=debug
    volumes:
     - ./config:/app/config
    ports:
      - 5055:5055
    restart: unless-stopped
Enter fullscreen mode Exit fullscreen mode

Don't forget to map the correct path to the config folder

Build the docker image and complete the set up when you go to localhost:5055 you will need to log in with your plex account

Once you get to last step it will ask you to add Sonarr and Radarr settings.
You can find the API keys for Sonarr/Radarr in Settings -> General -> Security -> API Key

Image description

Starting with Sonarr settings

At this point, you will need the IP of your device as Overseerr is running inside a docker image and it can't access the localhost hostname

Apart from required settings enable these settings too:

Default 4k server,✔️
4K server ✔️
Season Folders ✔️
Enable Scan ✔️
Enable Automatic ✔️
Anime Quality Profile: select your profile
Anime Root Folder: select your root folder
Anime Language: select default language

Image description

Test it and then Add Server

Now add Radarr server

Image description

Default 4k server,✔️
4K server ✔️
Season Folders ✔️
Enable Scan ✔️
Enable Automatic ✔️
minimum availability: Announced

Add server and finish the setup

You will see your dashboard and you can see all your current media here from Sonarr/Radarr

To request a new show/movie select the movie/show you want to download

Image description

Click on the request button on the right side a modal will show and click on request button

The movie should now be added your Radarr library and begin to download

Image description

You can see both the movie downloaded and added to your Radarr library, If you add a TV show it will do the same thing

Top comments (16)

Collapse
 
tamster profile image
Leo

This is like finding gold ! Thank you so much it is so simple and straight forward. Exactly filling my needs !
Finishing building my local setup so I'll be running this down by the weekend!
Only question I have, is the docker part. I have never dipped in that, plan is to run all this on windows , is there anything I should know of ?

Collapse
 
rafaelmagalhaes profile image
Rafael Magalhaes

No all fine on windows that's where I have everything setup

Collapse
 
tamster profile image
Leo

i have my plex set up to be accessible from WAN, this is working fine and easy to setup thanks to plex.tv. How would you recommend to go about openning overseerr to the public i can just reroute the ports for it but i'm not sure if it's really secure for my network

Thread Thread
 
rafaelmagalhaes profile image
Rafael Magalhaes • Edited

The easiest way without opening any ports would be cloudflare tunnels, other way would be to setup nginx and only opening port 443 on your router, I use cloudflare tunnels it's just easy to use, I also use nginx for hosting my sites, check out nginx proxy manager makes it easier

Collapse
 
kyle_johnson_0044d5b9ee0c profile image
Kyle Johnson

Hey is there anyway I can get the pictures that went along with this?

Collapse
 
rafaelmagalhaes profile image
Rafael Magalhaes

I didn't even know they went down, I will try and find them

Collapse
 
jim81jim profile image
James
Collapse
 
lazox profile image
Lazox

Searched online for hours till I found this article, it is easy to follow and there were actually no issues encountered. Made this account only to say THANK YOU!

Collapse
 
rafaelmagalhaes profile image
Rafael Magalhaes

Thank you

Collapse
 
tedcr profile image
ted

Thank you Rafael, this has been a massive help by having it all in one place!

Collapse
 
rafaelmagalhaes profile image
Rafael Magalhaes

Images are back!!

thank you @jim81jim for the web archive link

Collapse
 
jim81jim profile image
James

Glad I could help.

Collapse
 
timoransky profile image
Ján Timoranský

This is awesome, thank you for this guide!

Collapse
 
j_wilson_2f8a132459d4 profile image
Jason Wilson

It looks like a great article, but I would also love to see the images. Presumably, this is still relevant for 2024?

Collapse
 
jim81jim profile image
James
Collapse
 
rafaelmagalhaes profile image
Rafael Magalhaes

You legend!!!, I couldn't find the images