How to Install Roon Server on Synology NAS using Docker | Guide

Installing RoonServer on Synology with Docker

This guide explains how to run the official Roon Server Docker image on a Synology NAS. The setup process depends on your DSM (DiskStation Manager) version.

Before you begin

Make sure your Synology NAS has:

  • Container Manager (for DSM 7.2 or later) OR the legacy Docker app (for DSM 7.1 and older) installed from the Package Center.

  • x86_64 / amd64 processor. ARM is not supported.

  • 4 GB RAM minimum.

  • Roon Remote devices on the same local network as the NAS.

Notes

Note: We strongly recommend storing the Roon database on SSD-backed storage for optimal performance. On Synology, this usually means placing the /Roon folder on an SSD-backed volume (often the system volume) rather than on a spinning disk expansion storage.

Method 1: DSM 7.2 or later (Using Container Manager Projects)

Synology Container Manager (introduced in DSM 7.2) supports Docker Compose through "Projects". This is the recommended setup method because the configuration generator can do the heavy lifting for you.

  1. Open the Roon Docker Configuration Generator.

  2. Select Synology as your platform.

  3. Enter your timezone and folder paths. It is strongly recommended that the Roon data path points to SSD-backed storage.

  4. Copy the generated Docker Compose output.

  5. Open Container Manager on your NAS.

  6. Go to the Project tab and click Create.

  7. Give the project a name, for example roonserver.

  8. Paste the generated Compose YAML into the configuration field.

  9. Review the volume paths to ensure they match your NAS structure.

  10. Click Next, then Done to deploy.

Method 2: DSM 7.1 or older (Using the legacy Docker app)

If you are running an older version of DSM, you must use the standard "Docker" app and configure the container manually via the graphical interface.

  1. Open the Docker app on your Synology NAS.

  2. Go to the Image tab, click Add, and choose Add From URL.

  3. Enter https://ghcr.io/roonlabs/roonserver:latest (leave the Hub Page blank) and click Add. Wait for the image to download.

  4. Once downloaded, select the image and click Launch.

  5. Network: It is critical to select "Use the same network as Docker Host" (this is Synology's term for Host Networking). Roon will not be able to discover your audio devices without this.

  6. Advanced Settings / Volume: Click Add Folder to map your Synology host folders to the container paths:

    • Map your Roon folder to /Roon 

    • Map your Music folder to /Music 

    • Map your Backup folder to /RoonBackups

  7. Environment: Add a new variable named TZ and set the value to your timezone (e.g., America/New_York or Europe/London).

  8. Check the box to Enable auto-restart.

  9. Click Apply or Done to start the container.

Storage paths

RoonServer uses three main storage locations:

Purpose

Container path

Notes

Roon data

/Roon

RoonServer state: database, settings, identity, logs, and application files. Must be writable and persistent. SSD-backed storage is strongly recommended for the best experience.

Music library

/Music

Your local music library. This can usually be mounted read-only.

Roon backups

/RoonBackups

Optional but strongly recommended. Configure backups in Settings > Backups.

Required settings

Host networking is absolutely required for Roon discovery. Without it, Roon Remote may not find the server, and the server may not discover audio endpoints on your network. Also, ensure your container is set to restart automatically after a NAS reboot.

Release Branches

Two release branches are available:

  • production — stable releases. This is the default and does not require extra configuration.

  • earlyaccess — pre-release builds, updated more frequently.

If you are using Method 1 (Compose), you can set this via the configuration generator. If using Method 2, add an environment variable ROON_INSTALL_BRANCH with the value earlyaccess. Switching channels takes effect on the next container restart.

Migrating from a Native Installation

If you are moving an existing Synology Roon installation into Docker, use Roon's built-in backup and restore:

  1. In your current native Roon installation, disable all watched storage folders (Settings > Storage). This avoids path conflicts after migration.

  2. Create a backup (Settings > Backups > Back Up Now).

  3. Stop the native application.

  4. Copy the backup to a location accessible from your new Docker host mapping (e.g., your /RoonBackups folder).

  5. Start the new Docker container. On first launch, it will prompt you to set up or restore.

  6. Choose Restore and point it to the backup.

  7. Once the restore is complete, edit your music folders' paths with the paths as they appear inside the Docker container (i.e., /Music).

After installation

  1. Confirm the container is running in Synology's Container Manager or Docker app.

  2. Open Roon on your phone, tablet, or computer.

  3. Make sure the device is on the same local network as the Synology NAS.

  4. Select the Roon Server running on the Synology NAS.

  5. Set up a new Roon Server or restore from backup.

  6. Go to Settings > Storage and confirm your music folder is visible.

Common issues

Roon Remote cannot find Roon Server Confirm that "Host networking" (or "Use the same network as Docker Host") is enabled and that the Roon Remote device is on the same local network.

Performance is poor Confirm that the /Roon mapping points to SSD-backed storage. For the best experience, the Roon database should not live on a spinning disk.

Music folder is missing Confirm that the Synology host folder exists and is mapped to /Music inside the container. In Roon, use the container path (/Music), not the Synology host path.

Permission problems Confirm that the Docker/Container Manager service has read/write permissions to access the Synology host folders you mapped for /Roon and /RoonBackups, and read permissions for /Music.

    • Related Articles

    • Roon Server on NAS

      Roon Server requires a more powerful processor than most media servers due to our architecture. Historically, most NAS devices have not been powerful enough to deliver a first-class experience with Roon, but an increasing number are becoming capable. ...
    • Installing RoonServer on Unraid with Docker

      This guide explains how to run the official Roon Server Docker image on Unraid using its built-in Docker interface. Before you begin Make sure your Unraid server has: x86_64 / amd64 processor. ARM is not supported. 4 GB RAM minimum. Docker is enabled ...
    • RoonServer on Docker

      RoonServer can run in Docker using the official RoonServer image from GitHub Container Registry. This is the recommended containerized setup for Linux, NAS devices, home servers, and other systems where Docker provides a practical way to run and ...
    • Installing RoonServer on ASUSTOR with Docker

      This guide explains how to run the official Roon Server Docker image on an ASUSTOR NAS using Portainer. Useful Links: GitHub repository: https://github.com/RoonLabs/roon-docker Configuration generator: https://roonlabs.github.io/roon-docker/ Before ...
    • Roon 1.8 (Legacy)

      What is Roon 1.8 (Legacy)? Roon 1.8 (Legacy) is an older version of Roon. If you are already running it, this version allows you to continue enjoying Roon on hardware that does not meet the requirements for Roon 2.0 or later. If you're on this page, ...
    Visit the Roon Community!
    Need help? Thousands of Roon subscribers and audio enthusiasts are chatting over on our community site right now, join them! You don't even need a Roon subscription to sign up.