Roon server installation on Zimaos

Hello,

I am very much a newbie using a DIY home server with ZimasOS. I would like to know if somebody could help me with the following task:

I would like to install roon server and i would like to know if it is possible via the app store.

If yes : how to do with some documentation

If not is there an other way

Thanks a lots for your answers

regards

michel

Yes, you can definitely run Roon Server on ZimaOS, however it’s not normally available as a one-click App Store install.

The most reliable method is to run it using Docker Compose, and there is a very good community project for this on GitHub called:

elgeeko1/roon-server-docker

This project is widely used and has a clean setup for Docker-based systems like ZimaOS.


Step 1: Create the Roon data folder (important)

Open the ZimaOS terminal and run:

mkdir -p /DATA/AppData/roon-server/config

This stores your Roon database/config safely so it survives reboots and updates.


Step 2: Deploy Roon Server using Docker Compose

Create a custom compose app in ZimaOS and paste:

services:
  roon-server:
    image: elgeeko/roon-server:v1.1.0
    container_name: roon-server
    network_mode: host
    restart: unless-stopped
    volumes:
      - /DATA/AppData/roon-server/config:/opt/RoonServer
      - /DATA/Media/Music:/music:ro

Notes

  • network_mode: host is recommended because it makes Roon discovery work properly (Roon Remote can find the server easily).
  • Change /DATA/Media/Music if your music is stored somewhere else.
  • :ro means read-only (safer)

The Docker image is published under elgeeko/roon-server and version tags are available.


Step 3: Confirm it is running

Run:

docker ps

You should see roon-server running.


Step 4: Connect from your phone / PC

Install Roon Remote on your phone/computer (same network) and it should detect the server automatically.


If you are unsure of your music folder path, run:

ls -lah /DATA
ls -lah /DATA/Media

Small tip: I personally use the ZimaOS Compose Toolbox app and it’s excellent — it validates your Compose YAML and confirms the script is correct before you deploy, which avoids most beginner mistakes.


1 Like

Hello,

Sorry for a late answer !

I did as you explain to install Roon and it is unctionning So it is nearly perfect ( because perfect does not exist).

Thanks a lot

Regards

Miche l

Legend :smiley: love hearing that Michel!

Really glad you got it working and the install went smooth — and you’re 100% right… perfect doesn’t exist :joy:

If you want to take it one step further (optional), you can also:

  • pin the container image to a specific version (more stable)
  • make sure your music folder is mapped exactly how you like
  • add a dedicated SSD/NVMe location for the Roon database for best performance

But honestly if it’s running well now… leave it alone and enjoy the music

Any issues later, just post back here and we’ll help you out.

1 Like

I’m very happy to meet friends who also love using roon.

If you want the roon server to run directly on ZimaOS, you can install it using the following script:

curl -fsSL https://raw.githubusercontent.com/jerrykuku/staff/refs/heads/master/roonserver-installer-zimaos.sh | sudo bash

I just modified the installation location of the official Roon script, and the user’s application data will be installed in ZimaOS-HD/AppData/roon by default, and the main application will be installed in /opt/roon by default. Everything else remains original.

1 Like

You can also run Roon Rock in a VM but it is “messy” to setup as you have to add passthrough for a keyboard to the vm.

1 Like

Hello,

From the last time Roon was functionning well on ZimaOS with the description to install it . I could connect to roon server from my pc computer or my Iphone or my ipad. From today i’ can’t connect nothing to the roon server. Do you think it is problem of a version of roon or a ZimaOS. Do you have some idea ?

regards

Michel

If it was working before and suddenly nothing can connect (PC, iPhone, iPad), this is very unlikely to be a “Roon version” issue. It’s usually one of these:

  1. The Roon service/container stopped
  2. The network mode changed
  3. A ZimaOS update restarted Docker
  4. The database got stuck during an update

Let’s check a few simple things first.


1/ Check if Roon is actually running

Open Terminal and run:

docker ps

Do you see roon-server running?

If not, check:

docker ps -a

If it shows “Exited”, restart it:

docker restart roon-server

2/ If you installed using Jerry’s script (native install)

Then it is not Docker. Check the service:

ps aux | grep Roon

Or try restarting it:

sudo systemctl restart roonserver

(If systemctl does not exist, tell me, ZimaOS is Buildroot-based and service control can differ.)


3/ Quick network check

If Roon is running but devices cannot see it:

  • Reboot the ZimaOS machine once
  • Reboot your router
  • Make sure you did not enable a VPN on the server
  • Make sure the container is still using network_mode: host

Roon discovery is very sensitive to network changes.


4/ Check logs (important)

If Docker version:

docker logs roon-server --tail 50

If native install:

journalctl -u roonserver --no-pager | tail -50

Post the output here.


My guess (most common cause):
The container stopped after an automatic Roon update or Docker restart.

Let’s confirm whether it is running first, that will tell us which direction to go.

Hello,

Thanks for all now it’s working well:

About the problem first It was an update of Roon server then

the Roon server was running but not possibility to connect . To fix the problem I had to follow the quick network check you discribe to do.

I think the the reboot router was the problem !!!

I did a check logs with the result :

at Sooloos.RnetJsonClient.<>c__DisplayClass65_0.<_BeginRead>b__0(IAsyncResult ar)
System.Net.Sockets.SocketException (104): Connection reset by peer
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource<System.Int32>.GetResult(Int16 token)
at System.Threading.Tasks.ValueTask1.ValueTaskSourceAsTask.<>c.<.cctor>b__4_0(Object state) --- End of stack trace from previous location --- at System.Threading.Tasks.TaskToApm.End[TResult](IAsyncResult asyncResult) at Sooloos.RnetJsonClient.<>c__DisplayClass65_0.<_BeginRead>b__0(IAsyncResult ar) System.Net.Sockets.SocketException (104): Connection reset by peer at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken) at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource<System.Int32>.GetResult(Int16 token) at System.Threading.Tasks.ValueTask1.ValueTaskSourceAsTask.<>c.<.cctor>b__4_0(Object state)
— End of stack trace from previous location —

That all makes sense, and you diagnosed it perfectly

The log message:

SocketException (104): Connection reset by peer

is almost always a network interruption, not a Roon failure. In simple terms, something on the network (usually the router) dropped the connection while Roon was restarting after the update.

Since the server was running and rebooting the router fixed it, this confirms it was a network state issue, not ZimaOS and not a broken Roon install.

Roon relies heavily on local network discovery, and sometimes routers don’t refresh properly after updates. A router reboot clears that state and everything reconnects cleanly.

Nothing to worry about, your system is healthy

If it ever happens again:

  1. Restart the Roon container first
  2. If still not visible > reboot the router

Enjoy the music

I tried that too, but unfortunately it didn’t work to install the Roon Server via the script… How can I uninstall the remaining Roon components now?

Thanks

Have you tried this script?

Yes, but that didn’t work, and now I have parts of the Roon server in the system and can’t remove them because no application is installed to remove them.

curl -fsSL https://raw.githubusercontent.com/jerrykuku/staff/refs/heads/master/roonserver-installer-zimaos.sh | sudo bash -s uninstall
This is the uninstallation script

The script above comes entirely from Roon’s official sources; I’ve only adjusted the installation path for Roon.

Perfect, that worked, thank you!

I’ve tested this installation script on Zimaos many times. I’m curious to know what kind of issues you’ve encountered. Could you tell me about them?

The script simply aborted, causing the server installation to run in an endless loop.

Are you installing it on ZimaOS? If possible, could you send me a screenshot?

Next time I test Roon, I’ll take a screenshot for you.