Railway

Deploy Navidrome — Self-Hosted Music Server & Spotify Alternative

Self-host Navidrome — stream your own music, FLAC, any device

Deploy Navidrome — Self-Hosted Music Server & Spotify Alternative

Just deployed

/data

Deploy and Host Navidrome on Railway

Navidrome is a lightweight, open-source music server — your own private Spotify, streaming your personal music collection to any device. It's built on the mature Subsonic API, so dozens of polished mobile and desktop clients work with it out of the box, and it streams FLAC and every common format with a fast, responsive web player. At roughly 50 MB of RAM it's remarkably light, making it an ideal always-on personal music server on Railway — stream the music you own, from anywhere, with no subscription and no algorithm.


What This Template Deploys

ServicePurpose
NavidromeThe music server, web player, and Subsonic API on port 4533

A single, tiny service. A persistent volume at /data holds the SQLite database (users, playlists, play counts, ratings), configuration, and your music files under /data/music. Railway provides a public HTTPS domain so you can stream from any device.


About Hosting

Navidrome is an excellent fit for Railway — the one thing to plan for is how your music library gets onto the volume, and how big it is.

Your music lives on the Railway volume — size it to a curated library. Navidrome streams files stored at /data/music on the persistent volume. This is the key planning point: Railway volume storage is priced for application data, so this template is ideal for a modest, curated collection — your favorite albums, a few gigabytes — streamed privately from anywhere. For a very large library (hundreds of gigabytes of FLAC), a home server or NAS with cheap bulk storage is more economical; Railway shines for an always-on, remotely accessible core collection.

Getting music onto the volume. Unlike a home server where you copy files into a folder, on Railway you add music to the /data/music volume through your deployment's file access. Plan to upload a focused library rather than sync a massive collection; Navidrome scans it automatically on the ND_SCANSCHEDULE schedule (hourly by default).

Works with every Subsonic client — that's the ecosystem win. Because Navidrome implements the Subsonic/OpenSubsonic API, you're not locked into one app: point any Subsonic client — Symfonium, play:Sub, DSub, Amperfy, Feishin, and many more — at your Railway URL with your username and password, and stream. This mature client ecosystem is a major reason to choose Navidrome over heavier media servers.

FLAC and lossless stream great — no GPU needed. Audio streaming is light on CPU, so FLAC and other lossless formats play smoothly on Railway without the hardware-transcoding concerns that affect video servers. Navidrome can transcode down for bandwidth-limited connections if you set an output bitrate.

Your data persists; create the admin on first visit. The database, playlists, ratings, and play counts persist on the /data volume, and the first account you create through the web UI becomes the administrator. Open your Railway URL, create that account, and add users as needed — each with their own playlists and favorites.

Typical cost: ~$5/month on Railway for Navidrome's tiny footprint, plus volume storage scaling with your library size. Navidrome is GPL-3.0, fully free, with no paid tiers or telemetry.


How It Compares

Navidrome (self-hosted)SpotifyPlex/Jellyfin musicCloud music locker
Your own filesYesNo — catalogYesYes
Footprint~50 MB RAMN/AHeavierN/A
Client ecosystemBroad (Subsonic)Official appsTheir appsVendor
FLAC / losslessYesPremiumYesVaries
Cost modelFlat infraSubscriptionFlat infraSubscription
Self-hostableYesNoYesNo

Spotify has a huge catalog but you own nothing and pay monthly. Plex and Jellyfin play music but are heavier, video-first media servers. Cloud music lockers keep your files on a vendor's servers. Navidrome's edge is being purpose-built and ultra-light for music, with the broadest client ecosystem via Subsonic — a private, self-hosted music server for the collection you own, streamed anywhere, on infrastructure you control.


Deploy in Under 5 Minutes

  1. Click Deploy on Railway — Navidrome builds with a /data volume (~2 minutes)
  2. Confirm the volume is mounted and ND_MUSICFOLDER=/data/music
  3. Add your music files to /data/music on the volume
  4. Open your Railway URL and create your admin account
  5. Navidrome scans your library — install a Subsonic client, point it at your URL, and stream

Keep the library curated to your favorites so volume storage stays economical.


Common Use Cases

  • Your private Spotify — stream the music you own from any device, with no subscription
  • Curated personal library — a focused, always-on collection reachable from anywhere
  • Lossless streaming — stream FLAC and high-quality audio from your own collection
  • Family music server — multiple users, each with their own playlists and favorites

Configuration

VariableRequiredDescription
ND_MUSICFOLDERPre-set/data/music — where your music files live on the volume
ND_SCANSCHEDULEPre-setHow often to scan for new music (e.g. 1h)
PORTPre-set4533 — the web player and Subsonic API
ND_SESSIONTIMEOUTOptionalHow long login sessions last (e.g. 24h)
ND_MAXOUTPUTBITRATEOptionalCap transcode bitrate for bandwidth-limited streaming
Storage volumePre-setPersistent volume at /data for the database and music

Plan your library size. Music lives on the /data volume, and Railway storage is priced for app data — ideal for a curated collection, while very large libraries suit a NAS. Add files to /data/music; Navidrome scans automatically.

First account is admin. Create your admin through the web UI on first visit. The database, playlists, and ratings persist on the volume across redeploys.


Dependencies for Navidrome Hosting

  • Railway account — ~$5/month plus volume storage scaling with your library
  • A persistent volume at /data for the database and music files (included)
  • Your own music files, tagged and organized, to upload to the volume
  • A Subsonic-compatible client (Symfonium, play:Sub, DSub, Amperfy, Feishin) to stream

Deployment Dependencies

Implementation Details

The template runs the official deluan/navidrome image as a single service on port 4533, with a persistent volume mounted at /data holding the SQLite database (user accounts, playlists, play counts, ratings), configuration, and the music library under /data/music (set via ND_MUSICFOLDER). Railway forwards HTTPS to port 4533 and uses Navidrome's readiness endpoint for health checks.

The key deployment consideration is the music library itself: files must reside on the Railway volume, and because Railway storage is priced for application data, the template suits a curated, modestly sized collection rather than a very large multi-hundred-gigabyte library, which is more economically hosted on a NAS or home server. Music is added to /data/music through the deployment's file access, and Navidrome scans it on the schedule set by ND_SCANSCHEDULE, indexing new additions automatically.

Navidrome implements the Subsonic and OpenSubsonic API, so a wide range of third-party clients connect with just the server URL and credentials, and audio streaming (including FLAC and other lossless formats) runs comfortably on CPU without the hardware-transcoding constraints of video servers. The first account created through the web UI becomes the administrator. The /data volume is the component to back up; source music files should also be backed up separately.


Frequently Asked Questions

How do I get my music onto Navidrome? Add your files to /data/music on the Railway volume through your deployment's file access. Navidrome scans automatically on the configured schedule. Plan for a curated library, since files live on Railway storage.

Which apps work with it? Any Subsonic-compatible client — Symfonium, play:Sub, DSub, Amperfy, Feishin, and many more. Point the app at your Railway URL with your credentials and stream. This broad ecosystem is a core Navidrome strength.

Does it support FLAC? Yes — FLAC and other lossless formats stream well, since audio is light on CPU and needs no GPU. You can cap the output bitrate for bandwidth-limited connections.

How do I create my admin account? Open your Railway URL after deploy and create the first account through the web UI — it becomes the administrator. Add more users as needed, each with their own playlists.

Does my data persist? Yes — the database, playlists, ratings, and play counts persist on the /data volume across redeploys. Back up the volume, and back up your source music files separately.


Why Deploy Navidrome on Railway?

Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying Navidrome on Railway you get a private, ultra-light music server with the essentials handled — a persistent volume, the music folder configured, automatic scanning, and automatic HTTPS. Stream your own curated collection to any device through the Subsonic ecosystem, self-hosted on infrastructure you own.


Template Content

More templates in this category

View Template
Rocky Linux
[Jul'26] Hosted Rocky Linux 9 workspace with SSH and persistent storage. 🚀

codestorm
40
View Template
Foundry Virtual Tabletop
A Self-Hosted & Modern Roleplaying Platform

Lucas
71
View Template
Letta Code Remote
Run a Letta Code agent 24/7. No inbound ports, just deploy.

Letta
51