I’m retiring a 10+ year-old Qnap and trying to do a fresh install of ROON on a UGREEN DXP4800 Pro. This is my first experience with Docker so I’m a bit confused.
So far I have used the ROON config editor to create a .yml file and the server is up and running, my music is populated, but there is no data being written to the target folder. The only thing that is in there is an empty /roon/backups folder I created manually… nothing else. I would have expected to see an entire folder structure with files, much in the way my Emby docker install works.
See below for my compose file. If anyone can point me in the right direction, that would be great.
We found the issue. Looking at your mount output, /Roon and /RoonBackups are mounted as overlay filesystems rather than being bound to actual folders on your NAS volume. This means Docker could not find the host paths you specified and created temporary in-memory storage instead — which is why no data appears in the folder you expected.
The cause is a capitalization mismatch in your Compose file. Your NAS uses /volume1 (lowercase v), but your Compose file has /Volume1 (uppercase V). On Linux, these are completely different paths.
Please update your Compose file to use lowercase v consistently:
After saving the changes, stop and remove the container, then recreate it with the corrected Compose file. The database will then write correctly to /volume1/docker/roon on your NAS.
Thanks so much! I strongly suspected this is exactly what the problem was (case sensitive), but oddly enough, other Docker containers work. For example, my Emby server works with capitalization further down the path:
volumes:
# Emby application data
- /volume1/Docker/Emby/config:/config
- /volume1/Docker/Emby/cache:/cache
# Shared media (read only)
- /volume1/Media:/media:ro
In any event, I’ll give another shot at recomposing and will report back. Stand by…
Looking more closely at your Emby config, it’s actually using lowercase /volume1/Docker/Emby/ - so it’s consistent with what we described. The uppercase V only appears in your Roon Compose file, and that’s the mismatch causing the issue.
Your original Roon Compose has a mix:
- /Volume1/docker/roon:/Roon ← uppercase V ❌
- /volume1/Media/Music:/Music:ro ← lowercase v ✓
- /Volume1/docker/roon/backups:/RoonBackups ← uppercase V ❌
Emby works because it never had that inconsistency to begin with. Once you correct all three volume paths to use lowercase /volume1/, the database will write correctly to disk.