π― What is Navidrome?
Navidrome is a self-hosted audio streaming server, an open source solution that makes your personal music library available as a cloud-based streaming service. It has 100% support for the Subsonic API and is compatible with web players and various client apps.
[Personal music collection] → [Navidrome server] → [Web/mobile app] → Listen to music anywhere!
β¨ Core Features (Feat. Advantages)
-
π Automatic metadata management.
- Automatic artist/album sorting based on music file tags (ID3)
- Real-time lyrics display support (LyricsFind, Genius integration)
- Example:
Coldplay - Yellow.flac
β automatic artist photo + album cover display
-
π Multi-platform support.
- Web Player: Responsive design (https://your-server/navidrome)
- Mobile apps: Symfonium (Android), play:Sub (iOS), substreamer, etc.
- Desktop: Sonixd (Windows/macOS/Linux)
-
β‘ Use lightweight resources.
- Based on the Go language: can run with 50MB RAM (Raspberry Pi compatible)
- Transcoding support:
FLAC → MP3 320kbps
conversion to save mobile data
-
π Protect your privacy.
- No need to upload music to cloud providers
- Family account creation function:
user1, user2, kid
Manage separate playlists
-
π οΈ Advanced User Features
- Smart Playlist: Allows queries like
genre:"rock" AND rating >= 4
. - Webhook support: scrobbling playlists to Last.fm
- Smart Playlist: Allows queries like
π₯ Installation Guide (on Docker)
# Basic installation command
docker run -d \
--name navidrome \.
-v /your/music:/music \
-v /path/to/data:/data \
-p 4533:4533 \
-e ND_SCANINTERVAL=1m \
deluan/navidrome:latest
π Required settings
-
Environment Variables:
ND_MUSICFOLDER
: path to music folder (e.g.,/music
)- ND_DATAFOLDER
: Path to save settings (e.g.,
/data`)
-
Configuration file (
navidrome.toml
):[Last.fm] Enabled = true ApiKey = "your_api_key" Secret = "your_secret"
π Explore the user experience
Web Player Interface
![Navidrome Web Interface]
- Left Menu: Library Explorer (filter by artist/album/genre)
- Center: Album art grid view
- Top right: Live search bar (
artist:"IU" year:2020
)
Mobile app (Symfonium) integration
- Enter the server URL:
http://your-server:4533
- user authentication: set ID/PW login
- Offline Mode: Save your favorite albums locally
βοΈ Pros and cons comparison
Advantages | Disadvantages | |
---|---|---|
β Unlimited free music storage | β Initial setup learning curve | β Ad-free listening experience |
β Ad-free listening experience | β Requires port forwarding for external connections | |
β Personalized music recommendations | β Time-consuming to scan large libraries |
π Optimization Tips
- Accelerate the initial scan:
docker exec navidrome navidrome scan --force
- set up a reverse proxy (Nginx example):
location /navidrome { proxy_pass http://localhost:4533; }
- Automated backup:
0 3 * * * * tar -czf /backup/navidrome_$(date +%F).tar.gz /data
π‘ Utilization scenario.
- Personal DJ system**: Streaming custom playlists at weddings/parties, etc.
- Overseas music collection: Bypass country restrictions when living abroad with Korean music
- Family shared server: Unified management from grandpa’s trot to kid’s K-pop
π Conclusion: Recommended for those who!
> “Music enthusiasts who own rare tracks not on Spotify π΅” > “Privacy conscious individuals who care about their privacy π” > “Tech enthusiasts who want to run a server with low-end equipment like a Raspberry Pi π₯οΈ”
Navidrome is a modern solution that combines the culture of music collecting with the convenience of streaming. It can be a little complicated to set up, but once you do, you’ll have a complete personal music ecosystem. If you have a music collection of 100GB or more and want to access it on a variety of devices, give it a try!
> π References: > Official documentation: https://www.navidrome.org/docs > Korean community: https://forum.koreaubuntu.org (Music Server category)