Deploying roon server in proxmox environment

Hello everybody. I’m totally new to Roon, but not neceserily in IT.

Currently I have Roon installed on my Macbook M1 and it runs perfectly good, but there is one drawback - I have to have my notebook on each time I would like to listen any music and I’d like to play the music from mobile devices as well. I’ve got Proxmox VE in my basement where I have pfSense router and some smaller linux hosts for different tasks. The host is i5-8600T based machine with 32 gigs of RAM and M.2 drive for VMs. Got some questions:

  1. What resourcers should I assign to VM which will host Roon Server in terms of CPU Cores, RAM, and disk space - I will use Tidal as a source and EverSolo DMP-A8 as output device
  2. Should I run docker container (I’ve seen them here on forum), or install the server directly on Linux host? I use Debian distros, sometimes Ubuntu if I must strongly preferring pure Debian.
  3. How do I install it if I wanted to do it directly on linux host? Should I just run roonserver-installer-linuxx64.sh on clear system? Is it compatible with Debian 12?

Do I need to take any other aspects and issues under consideration? Any remarks and suggestions are much appreciated.

Thanks in advance

Krzysztof

You might also ask in the Tinkering section.

Unprivileged deb container, 2 cores, 2-4 G ram, 8 G disk. Roon with the std installer. You can change ram and cores dynamically (without restart).

I just migrated my roon-server docker container from an Ubuntu VM running on ESXi to an unprivileged container on PVE 8.3. I’ve got my backups and music stored on TrueNAS Core CIFS shares. I had to create two CIFS mounts directly on PVE (/mnt/app_roon) using two systemctl mount files. In those files I specified a special Options line:

Options=uid=102010,gid=102010,file_mode=0770,dir_mode=0770,credentials=/etc/smbcreds-app_roon,vers=3.0,iocharset=utf8,sec=ntlmssp

The UID/GID is the TN UID/GID + 100000. I then added this as a mount point for the container. This successfully shared the CIFS mounts with Roon.

The one thing I forgot was the compose line:

network_mode: host

Once I did that, the container came right up.

With TN Fangtooth you could use an incus container as well, pass through your music & backup directories, install roon in the container, no need for proxmox, docker, cifs.

  • Create an incus container. Debian, ubuntu whatever you prefer
  • chown 2147000001:2147000001 roon_backup (mapped to root:root inside the container
  • Add your music and backup datasets as disks
  • Copy the roon installer into the container (e.g. to the backup ds or with ssh)
  • Log into the container, install the usual dependencies, execute the installer

The server is available to all roon clients and sees all endpoints.

@Nickpi you are correct. However, personally I’m going to wait a bit before starting down the path of containers or VMs in TrueNAS. I’ve read about some issues in Electric Eel and I’d like others to be the beta testers. I have concerns about running an Internet exposed “privileged” container. Seems like a good way to expose all your data. I have created what I call “app users” on TN and give them permissions to my TN shares. In Proxmox I create host CIFS shares under /mnt for each app user like, /mnt/app_roon. In that directory I CIFS mount my music folder as read only and my Roon backup folder as RWX. I bind mount those to the Roon container.

Just a reminder that running Roon in these environments is not officially supported and if you need some help, putting a question up about Proxmox, for example, under Tinkering might get more traction/eyes on.

I have concerns about running an Internet exposed “privileged” container.

It is unprivileged just like your proxmox container.

Sorry I wasn’t clear. I was describing my setup and explaining that I use an unprivileged container, not that TN is using a privileged container. Either way so far it’s working fine.