Audiophiles unite! Now you can self host your own music server and listen on your devices. Navidrome makes it easy as pie to serve up your music and stream it anywhere you are.
What is Navidrome?
Navidrome is a self-hosted, open source music server and streamer. It gives you freedom to listen to your music collection from any browser or mobile device. It is a piece of software that allows you to listen to your own digital music in the same way you would with services like Spotify, Apple Music and others. It also allows you to easily share your music and playlists with your friends and family.
How Navidrome Works
After a simple installation, Navidrome indexes all digital music stored in your hard drive and makes it available through a nice web player and also by using any Subsonic-API compatible mobile client. Your music becomes searchable and you can create playlists, rate and “favorite” your loved tracks, albums and artists.
Install Navidrome using Docker Compose
I installed Navidrome using Docker Compose. Simply point the volume to where your music is and run the install.
version: "3" services: navidrome: image: deluan/navidrome:latest user: 1000:1000 # should be owner of volumes ports: - "4533:4533" restart: unless-stopped environment: # Optional: put your config options customization here. Examples: ND_SCANSCHEDULE: 1h ND_LOGLEVEL: info ND_SESSIONTIMEOUT: 24h ND_BASEURL: "" volumes: - "/path/to/data:/data" - "/path/to/your/music/folder:/music:ro"
Navidrome will run on the IP of your Docker host on port 4533 and automatically begin scanning your music. Depending on your library size, it could take a while for all of the album art to download to the server so be patient 😏
Navidrome and Subsonic/Airsonic
Besides its own Web UI, Navidrome is compatible with all Subsonic clients. The following clients are tested and confirmed to work properly.
- iOS: play:Sub, substreamer, Amperfy and iSub
- Android: DSub, Subtracks, substreamer, Ultrasonic and Audinaut
- Web: Subplayer, Airsonic Refix, Aurial, Jamstash and Subfire
- Desktop: Sublime Music (Linux) and Sonixd (Windows/Linux/macOS)
- CLI: Jellycli (Windows/Linux) and STMP (Linux/macOS)
- Connected Speakers:
- Sonos: bonob
- Alexa: AskSonic
- Subsonic Kodi Plugin
- Navidrome Kodi Plugin
I chose to use Substreamer on my iPhone for this example. I was easily able to connect to the Navidrome server by adding the URL into the settings of the Substreamer app.
As I stated earlier, there are plenty of apps to choose from however, Substreamer works best for my use case and I am very happy with how it looks and performs. You can try different apps to see how Navidrome will look by entering the demo server details in the app settings https://demo.navidrome.org.
Final Notes and Thoughts
Navidrome is a very well maintained project and has been actively developed for just about 1 year now. I am always amazed at how active the developer Deluan Quintão is and how well his responsiveness to the project has been over the last year. I can tell he takes pride in the Navidrome Project as it reflects on how well received the Navidrome project is in the self hosted community.
If you find Navidrome useful, be sure to stop by the Navidrome Github repo to give it a star! Let us know in the comments below what you think about Navidrome!