Skip to content

Setting up NZBGet in Docker on a Synology NAS

Updated for DSM6 and the latest version of Docker 19/11/2016

In the guide I will be taking you through the steps to download and setup NZBGet in Docker on a Synology NAS, this makes some assumptions that you know your way around the DSM interface.

Onto the Guide

The first step is to download the NZBGet image, we will be using the one provided by Linuxserver.io and can be found within the Docker interface on the registry tab.

You will just need to enter NZBGet as the search term and the top result should be the Linuxserver image.

nzbget01
Searching for the container

Right click on the image and click Download, you can track the progress in the image tab

nzbget02
Downloading the container

PGID and PUID

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.

putty

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

putty02

Setting up the NZBget container

Back in the image menu highlight the NZBGet container and click on Launch. This will open up the setup wizard.

On the first screen I am not making any changes as I do not need to limit the resources on my 1815+ as I have 6GB of RAM, just go straight into ‘Advanced Settings’.

newnzbget01

Tick the ‘Enable Auto Restart’ this will ensure the container starts up automatically if you reboot.

newnzbget02

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

Under the ‘Docker’ share create a folder called ‘NZBGet’ 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.

newnzbget03

Next click on Port Settings, we can now setup which port we want to use for NZBGet, by default the local port will say ‘Auto’ we need to change this to our own value otherwise the port will change every time you restart. In this case I am using 32333 but you can choose anything you want. This effectively port forwards to the container port of 6789.

newnzbget04

You do not need to change any settings in Network or Links

Environment Variables (GUID and PGID)

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 the environment tab enter the details as shown in the screenshot, but change them to whatever yours were noted as.

Timezone

To ensure the NZBGet container knows which timezone you are in, you can set this within the enviroment variables, using TZ and then a standard value for your Timezone. You can use this handy chart over on the VMware site, this setting is only really required if you use the scheduled download times within NZBGet.

PGID, PUID and TimeZone

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

newnzbget06

You can now launch the Docker image as it is ready to roll.

open up a new tab and go to the ip of your NAS and the port number you chose.

The default login details are:
Username = nzbget
Password = tegbzn6789

nzbget09

Published inDockerSynology

27 Comments

  1. chet lemon chet lemon

    yes, but what are the PATH settings in the nzbget program supposed to look like?

    • Dr_Frankenstein Dr_Frankenstein

      I just wanted to add that you do not need to change anything in the NZBGet PATHS settings as the appropriate folders are automatically created when you launch it for the first time.

  2. Gabriel Gabriel

    What’s the difference between PGID and GUID? You put PGID in the other guides, but GUID here.

    • Dr_Frankenstein Dr_Frankenstein

      They are described differently in the Linux Server setup material so I went with their descriptions, each of the containers must use a slightly different method for the permissions

    • Dr_Frankenstein Dr_Frankenstein

      OK I have double checked and they are PGID and GUID for NZBGet

      • Sean Sean

        So is it PGID or PUID in env variables? Is it possible to change after container is installed?

        Thank you so much by the way, I just gave up on trying to get CP/SNRR/NzbGet stable with normal synology packages and found these guides excellent.

        My docker seems a bit different now, probably because of new version, but basically you setup everything in “step 1” using advanced settings (incl) port.
        There is a checkbox called run docker in elevated mode, what does this do?

        Thanks

        • Dr_Frankenstein Dr_Frankenstein

          Hi Sean, I am going to be making some edits across the guides shortly to bring them in line with the slightly updated UI as it looks like Synology moved things around a little. I have edited the guide as it looks like I left in the incorrect ID naming, again these are also due to be updated in line with the easier method used in the NZB Hydra guide.

          I am not sure what the elevated mode does but I have not had to turn it on to get everything to work correctly.

        • Gabriel Lundmark Gabriel Lundmark

          Yes you can change environment variables later. You don’t want to use the elevated mode. It might be more insecure and isn’t needed.

  3. Sean Sean

    I noticed that after mounting my Downloads folder, the permissions where changed.
    The folder dissapeared from File station and I got a auth prompt in windows.

    When checking controlpanel “shared folder”, the description was gone (“system default shared folder”). All my normal user permissions were gone, and advanced permissions were set to true.

    Luckily I could just re-enable read/write for my user to regain access, but now I’m worried if this happens all the time with docker. I dont like mounting my video folder without knowing what really happened.

    I hope you can shed some light on this… Thanks

    I run the lastest DSM 6 btw.

    • Dr_Frankenstein Dr_Frankenstein

      Was the downloads folder originally created by download station? On my setup I have my downloads share already in place before setting anything up, so it may be changing the permissions due to it being owned by the system? This is purely a guess.

      • Sean Sean

        Yes, I’m pretty sure download station created that folder originally…
        Do you think it might have something to do with when I did the install the env. variable hade the wrong key, and didn’t have right permissions to the download folder, and somehow overwrote it?

        The only reason I discovered it was when I tried to setup CP docker, and the download folder was missing from the mount browser.

        Since no harm was done, I will try tomorrow to map video folder and see if same things happen again when installing CP.

        Off /on topic, since I haven’t setup indexers I haven’t tried downloading any thing yet,
        Does 7 zip/unrar come bundled with the docker, or do I need to install/change any settings for this?

        Thanks for replies and help! (Incl. Gabriel )

        • Dr_Frankenstein Dr_Frankenstein

          It does sound like a reasonable explanation for the behavior you have seen, the contain has everything required to get up and running.

  4. Mardy Mardy

    Thanks for the guide frankenstein. Does anyone know how to move files to a seperate folder (not withing the /downloads folder). The log says the files are moved to the correct location, but they are not visible in that folder. The completed download is moved according to the path setting under categories.

  5. d1910 d1910

    Hi,

    Does anyone know where the extension scripts are? I followed this guide and I can now connect to nzbget and that’s awesome 🙂 but it’s missing all the scripts in the settings under categories, choose “postscript”

    The list is empty when I click on it.

    Thanks!

    • Dr_Frankenstein Dr_Frankenstein

      Sorry for the late reply, you wil need to create a ‘scripts’ folder inside the folder you designated as the ‘maindir’ in the paths screen, then just copy your scripts into that folder.

      • d1910 d1910

        Hi again,

        Thanks for the help. That part works great now. I also installed couchpotato and I can add a movie and nzbget starts downloading it but during the postprocess it says:

        CouchPotato: Failed to post-process – No change in status!

        for 6 times and then fail. The movie remains in the /downloads/movies folder and never gets moved to the correct destination.

        • Same issue. Whether I provide the path to my scripts or move them, the scripts are not executing properly in docker.

          • Disregard. It looks like mapping the script directory is not the solution, the scripts need to be moved inside the nzbget folder in Docker and then they’ll work.

            Thanks for the excellent guide!

          • Jan-Niklas Jan-Niklas

            Facing the same problem. Despite I can see the script under settings it is not executing. In which folder do I have to put the script?

  6. Stef Stef

    Btw you might want to include the environment variable for the timezone.
    It’s important for example NZBGet where if you schedule something you want to run it at the correct time such as pausing/unpausing downloads, otherwise you might be downloading during “peak” traffic or whatever your ISP is doing.

    Example:
    TZ = Europe/London

    • Dr_Frankenstein Dr_Frankenstein

      Yes looks like I missed a step as I added that to my main install

  7. g0pher g0pher

    Thanks for that tutorial!

  8. Niels Niels

    Im having issues with Docker containers on my Synology. It seems the bridge interface does not have a gateway, and therefore the containers cannot reach the internet.
    Can you check your bridge interface(s) by doing a ‘docker network inspect bridge’ on your nas via ssh?

    • Dr_Frankenstein Dr_Frankenstein

      Hey I just spotted your post over on Reddit, I will post my output over there

  9. Mark Mark

    These guides for Docker are great. Thank you.
    All worked for me by following the steps. Can you do one for haproxy?
    I can’t seem to get that to work as the confit file directory structure is different.
    Thanks

  10. hopefullyhelpful hopefullyhelpful

    In case this helps anyone I had to use 8080:8080 and 8081:8081 as the port mapping rather than using the 32xxx ports.

  11. guerrilla guerrilla

    Hi. First thanks for the great guide, but I am having some permission issues.
    I set my PUID an PGID appropriately and it displays so in the overview tab in the details section of the container however in the log tab it shows that they have both been set to 0.
    GID/UID
    ————————————-
    User uid: 0
    User gid: 0

    I am able to download and files successfully but the permissions on the file prevents access. Through SSH the file information is:
    d——— 2 root

    The download location was initially created in DSM, and before setup of the container I set the owner to the correct_user and correct group for all the files and folders. I also set folder permissions to 775 and file permissions to 664.

    I was using the synocommunity install previous and it was working .

    Any ideas on what could be causing this?

Leave a Reply

Your email address will not be published. Required fields are marked *