Please note if you are using DSM7.2 or higher you should use the Container Manager version of this guide from the menu.
Update | Date |
---|---|
First version of the setup | 01/08/2021 |
Updated the general formatting Gave the guide a once over with LanguageTool | 14/03/2022 |
Added ‘books’ | 15/07/2022 |
Please note – before starting make sure you have installed the Docker package from Package Center
When passing folders into a Docker container each mount point is treated as its own filesystem.
This means when moving files between two mount points Docker will do a Copy, then Delete operation. Meaning you are creating a full duplicate of a file while its being ‘moved’ creating unwanted disk IO and temporarily taking up double the space. (especially when seeding torrents after copying to the final folders)
In order to avoid this we need to set up a clean directory structure that allows us to just have one folder or share mounted to our containers.
If you are starting with these guides and have existing media you may need to move around your data in line with this setup, I recommend creating all the folders below using File station to avoid potential permission issues later.
Directory Structure
With this setup all of your media will sit within a single share, you can call this whatever you want but in all the guides it will be called ‘data’. If you change its name you will need to adjust any steps or compose files from my guides accordingly.
Open up the control panel then in ‘Shared Folder’ hit ‘Create’

On screen 1 fill out the name as ‘data’

Screen 2 we leave the folder unencrypted

Screen 3 – Enable data checksums as this will help catch any issues with files during data scrubbing.

Screen 4 – just click next past the summary

On the final screen we don’t need to change any user permissions yet, we will do that in the second guide.

The Sub-folders
Now we have our main ‘data’ directory we need to create a number of sub-folders to hold our media and downloaded files. You can amend this depending on whether you are using Torrents or Usenet (Newsgroups) or both.
You will initially create 3 folders within /data
- media
- torrents
- usenet
Then under /data/media create
- movies
- music
- tv
- books
Then under /data/torrents create
- completed
- incoming
- watch
Then under /data/usenet create
- completed
- intermediate
- nzb
- queue
Your folder tree should now look like this.

That’s all your folders’ setup, you can now move onto step 2 where we will set up a Docker user.
Step 2: Setting up a restricted Docker user
Buy Me a Coffee or Throw me some Sats
If you have found my site useful please consider pinging me a tip as it helps cover the cost of running things or just lets me get the odd beverage. Plus 10% goes to the devs of the apps I do guides for every year.
when you set up the subfolders does this mean you are also storing your media under ‘data’?
I have all my videos etc stored under a top level folder ‘video’ and use jellyfin to manage all sub categories etc..
if i follow this guide does this mean I need to move all my existing vidoes to /data/media etc?
Hey, there is nothing stopping you using individual shares for things. However, if you do then you lose the ability to hardlink seeding torrents and all files will be copied across the filesystem rather than having instant moves. If you deviate it is very important that you keep all your mounts consistent between containers so when they tell each other were to find files they can both see the same paths.
Hey, thanks so much for your guides.
Probably a basic question, but now that I have sonarr and qbittorrent setup and working, how do I transfer these files from the Data>Torrents>Completed folder to the appropriate Data>Media>Movies or TV folder? Does this have to be done manually?
Cheers
Sonarr should do this for you – when the download completes it should see this and then initially create a hardlink from the completed to the tv folder. If its not doing this ping me an email or jump on Matrix / Discord as will be easier to go through
Thanks for the guides.
I have tried a few times to replace my existing sonnarr and nzbget with docker versions of sonarr and sabnzbd….but since all of my media (TV/Movies/Torrents) were set up in a shared folder before on my Synology drive, I am not sure how best to ‘move’ those into the docker space? Am I misunderstanding? Or maybe the Docker shared folder is outside the docker app space….sorry, very much a newbie here. Any help/insights appreciated!
And then I have to re-setup Plex to point to the right library files. I will have to also consider moving my mainstream media torrents too I guess?
Also, I get an error now with docker version of sonarr and it can’t find the downloaded versions of shows that were properly downloaded by docker sabnzbd….any help there? Error is: Import failed, path does not exist or is not accessible by Sonarr:
Hey Robert, I will ping you an email so we can see how best to set this up.
I appreciate the offer (and the guides, of course)!
I went to your discord and found “Permission Fixes – Pinned Post”, added my media path to it as well (/volume1/video/tv) and ran both commands….seems to be addressed now!
Thanks again!
Ahh OK that will be going on here in due course 🙂 only pinned it yesterday.