In the old forum, I found a discussion about installing Roon Server from the steefdebruijn/docker-roonserve Docker image. As a newcomer to TrueNAS and lacking much experience with TrueNAS I was a bit afraid it would be a pain, but it turned out to be quite a straightforward process.
I followed the guide from Techno Tim for creating a custom apps (look for " A Better Way to Run Docker Apps on TrueNAS").
The steps above apply to TrueNAS 25.04. I have a pool called apps on my SSD and data on my HDDs.
- Create a new “roon” dataset (I created it on my
appspool), and in Dataset Preset, choose “Apps”. - Create the datasets needed by Roon, with the same Preset:
- roon-app
- roon-server
- roon-backup
- music
- Go to System > Shell and create your docker configuration
cd /mnt/[your pool]/roonnano compose.yaml
With the following content:
services:
docker-roonserver:
image: steefdebruijn/docker-roonserver:latest
container_name: roon-server
hostname: myroonserver
network_mode: host
environment:
TZ: "Europe/Amsterdam"
volumes:
- /mnt/apps/roon-app:/app
- /mnt/apps/roon-data:/data
- /mnt/data/Music:/music
- /mnt/data/Roon-Backup:/backup
restart: always
volumes:
roon-app:
roon-data:
roon-music:
roon-backups:
I mapped the folders created above to the appropriate folders on my pools.
Change the hostname to a name you’d like to see as the server name.
- Go to Apps > Discover Apps > Custom App > (three dots) > Install via YAML
- give it a name (e.g. “roon-server”)
- in the Custom Config, paste:
include:
- /mnt/apps/roon/compose.yaml
Make sure that apps matches your pool name and roon the dataset created in the first step.
This will pull the configuration file specified above.
- Click on play button to launch the app.
From now on, you should be able to find your newly created Roon server (myroonserver) when launching a Roon client.
To enable remote access / Roon ARC, make sure to enable traffic between your TrueNAS server and the public on your router, for the following ports:
- 55000 (Roon ARC discovery)
- 9003 (Roon server)