Skip to content

Setting up SABnzbd in Docker on a Synology NAS

Last updated on 31st July 2019

I need to fix the images in this tutorial as it’s a couple of years old.. Should still work though.. 31/07/2019

This is the first part of a series showing you how to setup Usenet Automation using Docker on a Synology NAS.

I have been using the Synology community packages for quite some time as they were convenient to install from package manager but with recent iterations of DSM these packages quite often fail to install or even run, and its never clear what low level system changes they are making. So now that Docker is available for most Intel based Diskstation’s I decided to jump ship.

In this first guide I will take you through getting SABnzbd up and running within Docker.

What is Docker?

Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications, these application are distributed as Containers.

What is a Container?

A container is kind of what it says on the box, it contains everything that is required to run a particular application. you simply download a pre packaged image someone has already built and it will run within Docker, this means it makes no changes to your system and can easily be backed up if you even need to move it elsewhere.

Onto the Guide

This guide makes some assumptions that you have a general knowledge of the DSM interface and how to do the basics.

What I will be covering

  1. Installing Docker
  2. Getting PGID and PUID
  3. Downloading the Images
  4. Setting up Sabnzbd

Installing Docker

First things first you need to head into Package Center and search for Docker, install it to which ever volume you want, I personally have my apps on a dedicated SSD which keeps things snappy.

When you first open docker you will be asked if you want to read the help guides, you can choose if you want to do this. You will then be greeted by the overview tab, this will give you some overall usage stats for CPU and Memory, and once installed it will list running containers, my 412+ has been upgraded to 2Gb of RAM when it was my main NAS.

Before we proceed any further with downloading and installing containers we need to make sure any shares we have are setup and ready.


In the previous versions of these guides I used a long winded approach to getting your ID information, I have since found a much easier approach.

You will need to SSH into your Diskstation using ‘Putty’ or an equivalent program.

Open up Putty, the only thing you need to enter is the IP address of your NAS and select the SSH radio button.


Click on open, you will get a prompt asking if you trust the key, if this is the first time you have used SSH, just press OK or accept.

Enter the login information for you Synology user account, you will not be able to see the password as you type it, I use a very long one so I just paste it in from my password manager. (right click acts as paste in putty)

Once logged in type ‘id’ without the quotes and this will show your UID(aka PUID) which in my case is 1026 and the GID(aka PGID) which is 101 for an administrator


Downloading the Image

Head back into Docker and click on the Registry tab on the left hand side, the registry is where you search all of the available docker images on In the search box enter SABnzbd.


Click on the image made by Linux| as this will always be kept up to date. Click on Download.


After a few seconds the image will begin downloading this can be tracked in the ‘image’ tab, once the download has completed you will get a system message and the little blue animation to the right will stop.

Setting up SABnzbd 

Now we have our image downloaded we are ready to start setting up,  click on ‘Launch’ in the section at the top of the window. This doesn’t actually launch the app the wording is a little misleading, it essentially launches the settings.


The initial screen you are greeted with allows you to change the container name and resource restrictions, In this case I am leaving this all at its default.

Click on Advanced Settings, on the first screen you see enable auto restart as this will mean SABNZBD will automatically start up if you ever reboot your NAS.


‘Port Settings’

The port settings are extremely important, do not leave them to Auto as you will have to look up the port number every single time the container is restarted and it will screw with all your other containers as they will not be able to talk to each other.

Change the local ports to something you will remember as long as its between 32768 – 61000, for this tutorial I am using the ports below.

Local Port = 32700
Container Port = 8080 (SAB’s Non SSL Port)

Local Port = 32701
Container Port = 9090 (SAB’s SSL Port)

Press Next..



Then click on volumes, we are now going to set up the shares we want to mount. SABNzbd only needs access to two folders.

Under the ‘Docker’ share on your Diskstation create a folder called ‘sabnzbd’ this is important as your configuration files will be stored here. We do the same thing for all the other guides.

And then also add your downloads folder, this can be where ever you want to download your files. It should look like the screenshot below.

Environment Variables (PGID, PUID and Timezone)

Next we are going to setup a couple of Environment variables this is the user details we took note of earlier in the guide, this allows the Docker image to have the right access to the shares we just added. In addition we are also required to set the timezone for the container you can find a list of zones on wikipedia

In the environment tab enter the details as shown in the screenshot, but change them to whatever yours were noted as.

PGID, PUID and TimeZone

Click OK and this will take you back to the summary screen we saw earlier.

All Done!

Once you have entered all the details click OK to go back to the summary screen press Next, we are ready to roll, tick the  ‘Run this container….’ box and hit apply. after a few seconds you will see the container running in the container tab. open up a browser window and enter the IP address of your NAS followed by the port number used for the Non SSL port.

Up and running

You should see the SAB wizard so you can start to configure as you normally would.

If you have any questions please feel free to comment below.

Published inDockerSynology


  1. Rossi Rossi

    Great guide! Really looking forward to your Sonarr & CP guides. I’m also trying to get NzbGet up and running but I fail to save the settings once the container restarts. I’d be interested to see if you have any insights into how to solve the issue?

    • Dr_Frankenstein Dr_Frankenstein

      Once I have finished the other two guides I will have a look and NZBget. The Sonarr one should be up tomorrow at worst.

    • Dr_Frankenstein Dr_Frankenstein

      The NZBget guide will be up later today

  2. Kurt Kurt

    Hey drfrankenstein,

    Great tutorial, manage dot get SABnzbd working.

    Just 1 question, I use the PostProcessing Script , but now I dont know which folder to select?
    Before the container application, it used to be /usr/local/sabnzdb/var/script
    But that doesnt exist anymore…

    Kind regards,

  3. Mikael Mikael


    Thanks a lot for the tutorial!

    Could you give some more information regarding the mapping of folders?


  4. Scott McNabb Scott McNabb


    I am a little confused on the “Volumes” section (the screenshot links to the ‘summary’ page, not volumes).

    I’m not sure what exactly to put for the Mount Path.
    I have File/Folder of “/downloads/sabnzbd” set to “/downloads”.
    I have File/Folder of “/docker/sabnzbd” set to “/sabnzbd”.

    (As per screenshot

    I’ve done a few test downloads and they seem to go to the right place, being my ‘downloads’ shared folder. But don’t know about the other one or if the config is being saved.. Help?

  5. Tom Tom

    I have Sonarr installed and working, emby installed and working, but cannot for the life of me get SABnzbd set up. I’ve run through the install process about a dozen times, trying everything I know of. Each time, the container shows SABnzbd running, on the ports I assigned, but when I try to open it in a browser window, I get “This site can’t be reached refused to connect.”

    I am an absolute Docker newbie, so any and all help sincerely appreciated.


    • Pat Pat

      Did you find a solution to this?

      It’s happening to all my docker images.

  6. Harry Harry

    Excellent guide, it’s running perfectly on my Synology now. Can you also explain how to upgrade sabnzbd when running it in a docker container? The version inside my docker is still 1.1.1 while version 1.2.3 is the latest version. Thanks!

    • Dr_Frankenstein Dr_Frankenstein

      I wrote a long reply on my mobile but since I enabled the captcha’s on comments (to stop the massive amount of spam) the app doesn’t let me reply grrr. I will see if I can update the post on how to update.

      • Harry Harry

        That would be great, looking forward to it.

      • Paul Incley Paul Incley

        Hi! This was such a helpful guide, thank you! Would also love to hear how to update SABnzbd.

      • Joris Joris

        Hey man, any updates on this?
        I’d like to go from 2.0.0 to 2.1.0

        • Dr_Frankenstein Dr_Frankenstein

          If you have followed the guide all your SAB settings are in the config folder, this means you can just remove the whole docker image download the latest copy and just setup the docker image again. all your settings will then be carried across.

  7. Scott Scott

    As per the last comment, I’m also not sure how to update sab – sonarr/couchpotato appear to update themselves within the container, but sabnzbd does not.

    • Scott Scott

      I finally got around to updating from 1.2.0 to 2.3.1 (and to be honest it was only because scheduling wasn’t working properly, everything else was fine, I would have left it otherwise).

      All I did was

      – stop the existing docker container, renamed it, turned off auto start, and changed the ports it used, took note of all the settings, paths, environment etc
      – downloaded the new container and set it up as per instructions on this page

      the updated container just picked up my sab settings and existing queue (took a few minutes to load the UI after starting the container).

      I’m assuming this is how you’re probably supposed to update sonarr/radarr etc as opposed to just letting them update internally via the UI (docker dependencies?) but I’ve had no issues doing it that way so far.

  8. James James

    I had to use a different version of sab. The current iteration uses /datadir instead of /config and it does not let you change the complete and incomplete folders to a level up folder. It had all sort of read write issues.

    • Dr_Frankenstein Dr_Frankenstein

      I will revisit the guide this week as I am on Holiday so will have lots on my own time 🙂

    • Dr_Frankenstein Dr_Frankenstein

      Hey, was this definately the Linux|Server build as their guidance doesn’t suggest there has been a change.

  9. NightShaman NightShaman

    I am moving over to Docker for all my media apps. I usually use categories in sabnzbd in the downloads folder so my other apps know where to pick them up from, and move them to the correct folder. When I use volumes to pick my download folder I do not see the sub folders for my categories in it. are you not able to use categories in a container?

  10. Glenn Glenn

    Don’t know if this is the best place ot post.. dont know where in reddit to post, but when i use SABnzDB on my 1815+ 2GB Synology, i keep getting Volume Utilization of 100% every now and then.
    Everything churns to a stop, cant copy files, plex stops working..
    I close SAB on docker and it all drops down within moments to normal levels.
    Running 5 x 6TB RED WD drives in SHR…

  11. TS TS

    Dear Frankenstein, thanks for this instruction, although SABnzb is running, i don’t get the mapping right. I struggle with the folder vs mount pad. I have selected the the folder where I want to receive my downloads, but it installs in the docker sabnzb location. What is the exact difference between folder and mount, and how to I find out what the mount path is?

  12. Richard Richard

    Trying to set up SABnzbd 2.3 with Docker on Synology DS918+.

    The problem comes with the download folders. Docker is adding these into the /docker/[container]/ folder, and there is no way to set the target download folders outside of /docker/sabnzbd/.

    Apart from this the tutorial worked well – thanks!

    • ZAch ZAch

      Running into the same problem. Any thoughts?

  13. Neil Neil

    Great guide.

    One small question …. you mention below, that ports 32768 – 61000. I am sure there is a reason for not mapping 8080 to 8080 and 9090 to 9090. What would it be?

    “Change the local ports to something you will remember as long as its between 32768 – 61000, for this tutorial I am using the ports below.”

  14. Spacekiek Spacekiek


    I’m stuck on the ‘volumes’ piece of this tutorial …
    Did everything what was described, and would like to mount a shared folder outside the docker.

    But in the setup of SABNZBD, the base folder is /config and can’t change it.
    Browsing to /volume1 folders isn’t possible

    All downloads end up in docker/sabnzbd/Downloads/complete

  15. Spacekiek Spacekiek


    Finally figured out why I couldn’t select a SHARE with ‘complete’ and ‘incomplete’ folders in it ! Altough the guide sets everything up & running … when you launch sabnzbd, the standard folders in sabnzbd point out to : “Downloads\incomplete” and “Downloads \incomplete … ”

    This resulted in downloads ending up in the docker\sabnzbd … folders.

    When I set the folders equal to the mounted folders : \downloads and \incomplete-downloads in SABNZBD (config > folders) everything goes fine now! 🙂

  16. I too was having the annoying issue of not being able to save outside of the containers /config folder. I looked at a coworkers docker setup for his crashplan setup and he didn’t have PGID or PUID setup and was able to map to /volume1 perfectly. Once I removed the PGID/PUID I was able to map the folders perfectly. Running the latest DSM as of 2018_03_02

    My folders are added as follows:

    Once SAB was launched, I was able to change my DL folders to /complete and /incomplete

    Since I use sonarr/radarr/sab/plex all in docker, my ports start in the 42000 and increment up 100 ports from there. (example not my real setup but Plex is 42100, SAB 42200, SONAR 42300,RADARR 42400) I left the containers default ports alone. So SAB still has a container port of 8080, PLEX has 32400, etc…

    The only environment variable I changed was TZ. Everything works exactly as I want it to now.

    I hope this helps someone in the future

  17. ntotheizzick ntotheizzick

    Everything seems to be working but can’t navigate to sab using the container ports specified (8080 and 9090) only the internal ports. What am I doing wrong?

    Also, should I have set my synology up with a static ip before doing this?

    • Dr_Frankenstein Dr_Frankenstein

      A static ip would be a good idea but it’s unlikely to change, did you specify different ports during the setup of the container rather than the defaults?

      • ntotheizzick ntotheizzick

        Yes, I specified ports using your examples. I tried changing them a few times, but no effect. I can connect using the local ports but not the container ports. I’ve also set up radarr and sonarr and have the same issue.

    • Neil Neil

      So is your first application you have running in a docker container on a Synology?

      If you can take a screen grab of you settings for this docker container, that would be useful.

      • ntotheizzick ntotheizzick

        Yes, this is my first docker container but I’ve also subsequently set up radarr and sonarr and I’m having the same issue.


        • Dr_Frankenstein Dr_Frankenstein

          So that’s correct, you should be able to connect to the Local ports as they forward internally to the containers ports, 32701 you would have to make sure you use https://ipaddress:32701 or just plain http for 32700

          Looking at your screenshot you seem to has skipped entering the PGID, PUID for the container, so has SAB been able to write its files to the /config ?

  18. Neil Neil

    Silly question, but given that all your containers are running and you imply that you cannot navigate to any of them.

    Maybe it’s the ip address of the server, you are trying to get to, that is the problem.

    To start with, make the container run with the highest permissions, that way you avoid a potential permissions problem.

    Then once you have it running, you can tighten up the permission.

    • Dr_Frankenstein Dr_Frankenstein

      Increasing the permissions won’t make any difference as long as the PGID and PUID belong to someone with permission to the shares you give SAB access to that’s the only access it needs. You can always tell you have it setup correctly by seeing the container write the configuration files and folders into the /docker/whateveryounamedthefolder.

  19. Mark Mark

    My first container. I have a static IP address for my Synology DS918+, and I know that SAB is setup correctly because the config files/folders have been written into docker/sabnzbd. I cannot connect through a web interface (Firefox) using NAS IP:8080. Not sure what is happening here. Here’s a screenshot of my docker settings:!As-r-zzqPTNjg14nS6AzAy7f-2zY

    Any suggestions?

  20. jj lolo jj lolo

    Thanks for the guide. How would I make sabnzb use a VPN (PIA)

    – Is the VPN simply another container?
    – Can I route the traffic from one container to another
    – Can I ping to make sure the VPN hasn’t dropped to kill the VPN container and restart (kill switch)

    • Dr_Frankenstein Dr_Frankenstein

      You could just setup your whole NAS to connect to a VPN in the network settings. To be honest if you are connecting to SSL it’s not really worth it as your connection is encrypted. Unless you are looking to hide that you are using Usenet from your ISP.

      You may want to look at how people have done this for torrenting as then it’s a much more popular setup

  21. frog frog

    I am perfectly the post.
    I create volumes for the download in “volume1 / downloads / sabnzbd” and another for the config “volume1 / docker / sabnzbd”.
    Still, he creates me a download folder in “volume1 / docker / sabnzbd / downloads”
    Do you have a solution?

    • Dr_Frankenstein Dr_Frankenstein

      Double check you folder maps as it sounds like you missed something.

        • Dr_Frankenstein Dr_Frankenstein

          OK I think it’s because you are using a captital D in the downloads info you entered into SAB as linux has a case sensitive filesystem so Downloads is different to downloads. See if that does it.

          • frog frog

            The folder “Downloads” in docker / SABnzbd / Downloads “is built by the container” Linuxserver-sabnzbd “, not by me …

            I built:
            “SABnzbd” in docker
            “SABnzbd / complete and temp” in downloads

  22. frog frog

    The folder “Downloads” in docker / SABnzbd / Downloads “is built by the container” Linuxserver-sabnzbd “, not by me …

    I built:
    “SABnzbd” in docker
    “SABnzbd / complete and temp” in downloads

      • frog frog

        In this photo, the files are built by the container.
        It’s not me who puts a “D”.
        The folder “docker / SABnzbd” is empty before launching the container.
        all the files of “docker / SABnzbd / config” are built by the container ….

        • Dr_Frankenstein Dr_Frankenstein

          I am out at the moment and didn’t bring my laptop, I am pretty sure you can just type over the folders shown in the screenshot. When I get home later I will setup SAB and see what it does.

          • frog frog

            Hi, still this problem.
            It puts all the files in the same, File / Folder: “docker / SABnzbd” // Mount path: “/ config”
            Still, I did as you told me, changing the “Downloads” to “downloads”
            If you have an idea

  23. Joe Mudra Joe Mudra

    I followed the guide and got the following when trying to open a webpage to sabnzb

    Access denied – Hostname verification failed:

    • Joe Mudra Joe Mudra

      Figured out if I use the IP it works fine. However, I’m using NZBplanet as my Usenet provider, and I cannot seem to connect to it. Keep getting “[Errno 99] Address not available Check internet or DNS problems. I’m going back through the setup of the container now to make sure I didn’t mess something up in there.

  24. Nick Nick

    I recently switched to the new Google Nest Wifi mesh router which has somehow screwed up my Synology / Docker / Sabnzbd setup.  One additional complication too is that I’m using the Synology DDNS service “”.  My Sabnzbd, Radarr and Sonarr docker containers all seem to be running and are accessible on my local network using on the local ports I specified in the container settings, but aren’t accessible outside my local network.  Also the apps can’t seem to connect with one another – Radarr and Sonarr aren’t able to connect to or pass nzb’s to Sabnzbd.  
    Is there a simple setting I’ve missed somewhere on the Synology / DDNS side?  Or is it a port forwarding / opening issue?  Opening those local ports doesn’t resolve the issue.  I had all of this set up on my old router but of course have forgotten what I did.

    • Dr_Frankenstein Dr_Frankenstein

      Hey spotted your post on reddit aswell, this is most likely a port forwarding issue as the router is the only thing that changed in your setup. We’re you using the DDNS address for you local connections. As you can just use the IP address and port of you NAS for the local stuff.

  25. Thomas Jespersen Thomas Jespersen

    Has anybody experimented with btrfs vs ext4 filesystem? I have a DS218+ and occasionally sabnzbd slows down to a halt while processing large files (like huge movie downloads).

    I have noticed that when I initially setup my DS218 I had selected btrfs. I can now understand from searching with google that many people have problems with the combination btrfs/sabnzbd.

    I understand btrfs has certain advantages but performance is one on ext4’s advantages. And the DS218+ is not powerful in performance anyway.

Leave a Reply to Harry Cancel reply

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