Roon Docker on Synology NAS not accessing library (ref#D5XMBU)

Hi! What’s not quite right with Roon?

· None of the above quite fits

None of the above quite fits

· None of these quite match

Tell us what's going on

· I noticed that Roon installed on a Synology NAS (Docker) DSM 7.1.1-42962 Update 9, image gz1903, stopped seeing the library, which is also on the same NAS. When I try to add a network folder, I get an UnexpectedError message. The server itself works fine, but it only plays Tidal.

Tell us about your home network

· router GS-BE18000, no vpn, switch yes

Hello @Jaroslaw_Karelus

Thank you for the screenshots. Before anything else, one thing needs to be clear.

We support only the official Roon Server Docker image. The image you are running, gz1903/roonserver, is a community build that we do not publish, do not test and cannot see inside. We cannot tell you how it is built, what permissions it grants, or why it behaves as it does, so there is a limit to how far we can help you while you are on it. If you want supported Docker on your Synology, the official image is the answer:

Second, you should not be using an SMB share at all here. Your music is on the same NAS that runs the container. Reaching it over the network means Roon leaves the machine and comes back to it, which requires the container to have special permission to mount SMB filesystems, a working account and password, and the NAS’s SMB service behaving. All of that to reach a disk directly underneath it. Your screenshots show what that costs: the music share returns UnexpectedError, and your backups to the same NAS last worked on 4 August and failed on 12 August. One cause, two symptoms.

Pass the folders into the container instead and Roon sees them as ordinary local storage. No network, no credentials, nothing to break.

So the route we would recommend, in this order:

1. Take a working backup now. Your most recent one is from 4 August and everything else depends on this. In Roon go to Settings → Backups, add a location that is not on the broken SMB path, run it, and confirm it succeeds. Do not proceed until it has.

2. Build a new container from the official image, using the generator linked above. It will produce the configuration for you. Map three folders from the NAS into it:

  • your music folder, for example /volume1/roon/music, to /Music
  • a folder for the database to /Roon
  • your backup folder to /RoonBackups

3. Restore your backup into the new server, then add your music under Settings → Storage as an ordinary folder rather than a network share.

Keep the old container in place until the new one is working, and do not delete anything until you are satisfied.

One question, because it may be worth knowing either way: did anything change on the NAS around 12 August? A DSM update, a change to SMB settings, or a password change for the sulerak account would explain why both the music share and the backups stopped on the same day.

Thanks for the reply, but I wasn’t able to download the image via Docker. None of the addresses are working. Maybe there’s a file with the image to download somewhere. Should I try installing from a file?

Hello @Jaroslaw_Karelus

You are on DSM 7.1.1, which means the legacy Docker app rather than Container Manager. That app has known trouble pulling images from GitHub’s registry through the Images tab and the Add From URL box. We have seen this several times from other Synology owners on your DSM version, and it fails the same way every time regardless of how the address is typed. Our own Synology guide still recommends that route, which we are getting corrected.

The way that does work is the command line. Two commands, then back to the graphical interface.

1. Enable SSH on the NAS
Control Panel, then Terminal & SNMP, and tick Enable SSH service.

2. Connect and pull the image
From a terminal on your computer, replacing the details with your own:

ssh yourusername@your-nas-ip
sudo docker pull ghcr.io/roonlabs/roonserver:latest

It will ask for your password twice, once for SSH and once for sudo. The download takes a few minutes.

3. Back in the Docker app
The image will now be sitting in the Image tab. Select it and click Launch, then follow the rest of our guide from that point:

Two settings from that guide matter more than the others, so please do not skip them. Under Network you must choose Use the same network as Docker Host, or your remotes will not find the server. And create the host folders in File Station before launching the container, or it will fail with permission errors.

Once it is running, please turn SSH back off if you would rather not leave it enabled.

Please also switch SSH off again afterwards if you prefer, and tell us how you get on. If the pull itself fails, copy the exact error and we will look at that rather than guessing.

I managed to install your Roon server(THX), but I still can’t add any network folders. How can I copy files to the container directory music?

If your music is on the same NAS, you don’t need to add it via a network folder. Instead, add it as local storage.

The problem is that you can’t see any other directories besides the ones from the container

Then your mapping of the local music folder is probably not working.

I’ll leave this to @vadim or others because I don’t use Roon on a NAS.

Hi @Jaroslaw_Karelus,

Only seeing the container’s own folders means the folder mappings from vadim’s step 2 didn’t take when the container was created. Roon Server can only see paths mapped in at launch, that’s also why Add Network Share throws the UnexpectedError, so please leave that path alone.

Mappings can’t be added to an existing container, so let’s confirm and recreate. Over SSH:

sudo docker exec -it roonserver ls -la /Music

If that’s empty or errors, the mapping is missing. First make sure your host folders already exist in File Station (e.g. /volume1/music, /volume1/docker/roon, /volume1/docker/roonbackups) Docker on DSM 7.1.1 can’t map a folder that isn’t there yet. Then:

sudo docker stop roonserver && sudo docker rm roonserver

sudo docker run -d --name roonserver \
  --network host \
  --restart unless-stopped \
  -v /volume1/docker/roon:/Roon \
  -v /volume1/docker/roonbackups:/RoonBackups \
  -v /volume1/music:/Music \
  ghcr.io/roonlabs/roonserver:latest

Adjust the NAS paths on the left; leave /Roon, /RoonBackups, and /Music exactly as written (case sensitive). Your database is safe as long as /volume1/docker/roon is mapped and holds it.

Re-run the ls -la /Music check — you should see your album folders now. Then in Roon: Settings → Storage → Add Folder (not Add Network Share) → browse to /Music.

If /Music lists your files but Roon still imports nothing, it’s permissions — post the output of sudo docker exec -it roonserver ls -ld /Music.

Did you rebuild the container through the DSM Docker GUI or from the command line?

If I upgraded to version 7.4, would these problems not occur?

Hello @Jaroslaw_Karelus

Upgrading to DSM 7.4 would give you Container Manager instead of the old Docker app, which makes downloading images easier. It would not change what you are seeing now, because folder mapping works the same way on both. So please do not upgrade expecting it to fix this.

The important thing is that you are looking for something that should not be there.

When you map a folder into a container, you give it a new name inside. Your Synology folder /volume1/music becomes /Music inside the container. It is not a copy and it is not a different place. It is the same folder and the same files, reached under a different name.

So this is correct and expected:

Inside Roon you see:     /Music   /Roon   /RoonBackups
You do not see:          /volume1/...  or any other Synology folder

Roon can only see the folders you mapped. Everything else on the NAS is invisible to it, by design, and that is not a fault.

Two things follow from that.

You do not need to copy any files anywhere. Your music stays exactly where it is on the NAS. If the mapping is correct, opening /Music in Roon shows your existing album folders already there.

And you never need Add Network Share. Use Settings, then Storage, then Add Folder, and select /Music. Add Network Share is for music on a different machine, which is not your situation, and that is why it returns an error.

How to tell whether the mapping worked. This is what Benjamin’s command checks:

sudo docker exec -it roonserver ls -la /Music

If it lists your album folders, the mapping is correct and you can add /Music in Roon straight away.

If it is empty, the mapping did not take, and the container needs recreating with the mapping in place. Mappings cannot be added to a container that already exists.

Please run that command and paste what it prints. That tells us in one step whether anything more needs doing.

Hello @Jaroslaw_Karelus,

Just checking in on this. Were you able to run the sudo docker exec -it roonserver ls -la /Music command we mentioned and see whether it lists your album folders inside the container? If it does, the Synology mapping is already correct and we can move straight to adding /Music in Roon under Settings, then Storage, then Add Folder. If it comes back empty, we will need to recreate the container with the folder mapping in place, since mappings cannot be added after the container already exists. Let us know what you found.

Please note, if we don’t hear back from you this thread may close automatically soon. If the thread auto-closes and you need further assistance, please submit a reopen support request via the technical support help form below and specify that the issue should be reopened. Thank you.