Skip to content

Sonarr in Docker on a Synology NAS

UpdateDate
Added Docker Compose details
Added new folder mappings to ensure atomic moves and Hard-linking
03/05/2021
Guide re-written and updated with DSM7 screenshots 01/08/2021
Updated wording in some sections and updated the Docker Compose16/12/2021
DSM7.1 Updated Screenshots and Steps03/06/2022
Added new port settings and Docker Bridge Network24/07/2022

What is Sonarr?

Sonarr is used to search, download and organise your TV shows in conjunction with your preferred Usenet or Torrent downloaders and indexers.

Let’s Begin

In this guide I will take you through the steps to get Sonarr up and running in Docker.

In order for you to successfully use this guide please complete the three preceding guides

Downloading the Sonarr Image

Open up Docker within DSM and navigate to the ‘Registry’ tab and search for ‘Sonarr’.

In the list of available containers select the one made by Linuxserver as shown below, right click on it and select ‘Download’ or click the button at the top of the window.

When the dialogue pops up asking you to choose a version, make sure you choose ‘Latest’ from the list.

You can check the status of the download over on the ‘Image’ tab.

Setting up the container

In Docker click on the ‘Image’ tab, in the list of your containers select the ‘Linuxserver Sonarr’ image and click on ‘Launch’

You will be greeted with the Network screen, we will be using the ‘synobridge’ network we created earlier select it from the list and click Next.

General Settings

Next you will be greeted with the General Settings screen, this is where you can start specifying some of your preferences.

You can change the name of the container to anything you like, and you may want to enable Auto Restart as this will ensure Sonarr starts automatically if you reboot your NAS.

You will also notice a Configure capabilities button — don’t change anything in here!

Next up we are going to click on the ‘Advanced Settings’ button, this will take you to a new window with a number of tabs which we are going to work through.

Environment (PGID,  PUID and Timezone)

Next we are going to set up a couple of environment variables that docker will use to allow the container access to our files and folders and also to tell it where we live in the world.

Click the Add button, and fill in the following details as per the table/screenshot, you will need to do one at a time.

variableValue
PUIDThe UID you obtained in the user setup guide
PGIDThe GID you obtained in the user setup guide
TZYour timezone wikipedia.org/wiki/List_of_tz_database_time_zones

Links / Execution Command

You do not need to set up anything on these tabs.

Press ‘Save’ to go back to the initial setup screen, then press ‘Next’

Port Settings

We won’t be changing any of the ports the container uses. You can repeat the ones shown on the right side of the settings page ‘Container Port’ onto the left side ‘Local Port’ once you have done this press ‘Next’.

Volume Settings

We will now be specifying the directories where Sonarr will store its configuration files and where to find our media and downloads.

Click on ‘Add Folder’ select the ‘docker’ folder and create a new sub-folder called ‘sonarr’ select this folder and click ‘select’

Repeat this process to add the /data folder.

You will now add the below settings into the ‘Mount path’ section

File/FolderMount path
docker/sonarr/config
data/data


Click Next to move to the final screen.

Summary

You have now completed the setup of the container.

You will be shown an overall summary of the settings we have specified, this is a good time to double-check everything is correct. Finally, click on Done and the container should start to boot.

You should now be able to access Sonarr via the IP of your NAS followed by the port 8989

e.g. 192.168.0.40:8989

Make sure you check out page 2 of this guide that covers some common basic settings.

Docker Compose

You can use the below code saved as sonarr.yml in the ‘/docker/sonarr’ share, this will do the entire process above in one quick command via SSH. Ensure you change the variables to your own.

version: "3.8"
services:
  Sonarr:
    image: linuxserver/sonarr:latest
    container_name: sonarr
    environment:
      - PUID=YOURPUID
      - PGID=YOURPGID
      - TZ=Europe/London
    volumes:
      - /volume1/docker/sonarr:/config
      - /volume1/data:/data
    ports:
      - 8989:8989
    network_mode: synobridge
    restart: unless-stopped
sudo docker-compose -f /volume1/docker/sonarr/sonarr.yml up -d


Throw me some bits or buy me a coffee?

If you have found my site useful please consider pinging me a tip as it helps cover the cost of running the site, you can even buy me a coffee 🙂

Buy Me A Coffee
Doge / Ethereum / Bitcoin

Pages: 1 2

Published inDockerSynology

47 Comments

  1. Mark. Mark.

    Thanks for this guide!!
    I have a question on the path resolution if that’s ok?

    If sonarr is using “/data”, how do we end up mapping to “/data/media/tv”, as opposed to just “/data/tv”. I can’t figure out how nzbget & sonnar resolve the “/media” directory. I used to have movies & tv top level (rather than within /media).

    Thanks!!

    • Dr_Frankenstein Dr_Frankenstein

      Hey, we pass the whole of /data into Sonarr, this means it has access to everything under /data.

      If you have your media stored in ‘/data/tv’ rather than ‘/data/media/tv’ when setting your ‘root path’ within Sonarr’s settings you use that directory instead.

      Sonarr will just grab you completed downloads and move them there instead.

      • Mark Mark

        ooh root path, that’s the setting I’m missing 🙂 – I had mine set to “/tv” rather than the new structure of “/data/media/tv”!

        Thank you so much!!

        • Dr_Frankenstein Dr_Frankenstein

          I am about 80% through a write up covering all the basic settings post the container set up. Hopefully it will help others get these last pieces of the puzzle in place.

          • Mark Mark

            That sounds great! I’ll look forward to that one 🙂

  2. Justin Justin

    For the life of me, I can’t figure this out. Sonarr will not open with my ip:8989. I’ve followed these steps a dozen times, I’ve memorized them. It worked perfectly with nzbget and Radarr. The files are made in the Sonarr folder, the logs look like everything is “indexing” and running smooth, but 8989 does not open it up. No firewall. Any clue?

    • Justin Justin

      Figured it out. If it happens to anyone now: in Environment Variables, a line was added that said “SONARR_BRANCH” and main as it’s value. Not sure if it was important, but once I deleted the line it worked.

      • Rob Rob

        I came across this issue as well but removing “SONARR_BRANCH” env var didn’t help. I noticed the port setting for local port was set to auto so I changed it to 8989 which helped.

        • Dr_Frankenstein Dr_Frankenstein

          You need to either specify the port as you have or use the network tab and tick the box ‘use the same network as the host’

  3. chzplz chzplz

    There’s a typo: “You should now be able to access Radarr via the IP of your NAS followed by the port 7878.” Should be 8989.

    Thx for these guides!

    • Dr_Frankenstein Dr_Frankenstein

      Thanks fixed!

  4. MDLL MDLL

    Hello, Followed your very useful guide but getting a problem in the steps that follow – in sonarr when I want to add the download client (download station) I’m having trouble with the setup as follows:

    Add Download Client – Download Station

    Name: Download Station
    Enable: v
    Host: My Synology IP
    Port: 5000
    Use SSL: BLANK
    User: The dockerlimited one used in the guide? or regular user? I’ve tried both
    Password: as above
    Category: Get warning here when left blank saying “Shared folder does not exist”
    Directory: BLANK
    Client Priority: 1

    Can’t get past here as unsure what happens with the Category field.

    Also when doing setup and trying to import series to library I don’t seem to have the permission to add the directory.

    I’m wondering if both are tied to the same issue.

    Help much appreciated.

    • Dr_Frankenstein Dr_Frankenstein

      Hey, I have not used downloadstation (DS) before for this purpose, are you using it for torrents or usenet?

      The dockerlimited user won’t have any access to the DS app as you would have revoked its permissions during setup of that user… you will need to go back into the dockerlimited user and enable it access to DS first… then see if sonarr etc allows you to add it… as long as DS is putting the files into the same locations as the way we setup other torrent or usenet clients it should work fine.

      The second part it’s hard to tell what you are doing. Are you adding an existing directory as a ‘root folder’ in Sonarr?

      If you jump on discord or reach out via the contact page I can help with screenshots..

  5. TVS TVS

    Hi. love your guide , really helpful but when installing sonarr and radarr I get an error saying binding socket failed for 0.0.0.0. error 98 adress already in use.

    I got a new synology nas, and docker and nzbget are the only things Ive installed yet.
    Any advice?

    • TVS TVS

      Found the issue, while following the steps somehow I got a nzbget.config file in my folder. After disabeling that file I tested it and it worked fine. So i deleted this file.

Leave a Reply to MDLL Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

drfrankenstein.co.uk – writing Synology Docker Guides since 2016 – Join My Discord!