How I Replaced Music Streaming Services With a Self-Hosted Stack

by Karley Harris
14 minutes read

How I Replaced Music Streaming Services With a Self-Hosted Stack


Navidrome on a Mac

It’s inalienable to replace TV as well as movie spouting selections as there are jumble of exhaust software to execute so. But the super same cannot be proclaimed for songs spouting selections. You’re dealing via discovery, metadata, playlists, syncing across equipments, as well as the reality that keeping an on-disk songs library still takes campaign. That proclaimed, I’ve landed on a number that works faultlessly for me. Listed under’s a proper appearance at how I’ve package it upwards as well as what you’ll should recreate it.

Every spouting solution owns a backend. Spotify, Apple Tunes, as well as YouTube Tunes unanimously depend on ghastly infrastructure that store fronts your library, oversees metadata, as well as streams cogent on final alert. When you construct your super own spouting number, Navidrome comes to be that backend.

Navidrome is a self-hosted songs server that scans your library, arranges it, as well as shares a spouting user interface that works across web, desktop computer, as well as mobile phone sufferers. It stabilizes the Subsonic API, which strategies you can affix modern-day gamers that genuinely feel merely as brightened as Spotify.

Navidrome login web page
How I Replaced Music Streaming Services With a Self-Hosted Stack 17

There are innumerable intends to mount Navidrome, involving sprinting the cyndrical tube correct from Docker Hub. But, utilising Docker Write is the much closer method, specifically if you strategy to widen your number via automation contraptions prefer Lidarr as well as download sufferers later.

I am utilising a Mac for this tutorial. The projects should be attire on Linux as well as inalienable to recreate on Residence windows as faultlessly.

Previously equipping Navidrome, you final alert a spick-as well as-span folder texture. This retains your songs, downloads, as well as solution file ascertained upwards. Amenable Incurable as well as sprinted:

mkdir -p ~/docker/music-server
cd ~/docker/music-servermkdir -p music
mkdir -p downloads
mkdir -p compose

The “songs” folder will have your real library, while “downloads” will be offered later for automation. Presently, navigate into the compose folder:

cd ~/docker/music-server/compose

Fabricate the Docker Write file:

nano docker-compose.yml

Paste the consequent arrangement:

services:
  navidrome
:
    image
: deluan/navidrome:latest
    container_name
: navidrome
    ports
:
     - "4533:4533"
    volumes
:
     - navidrome_data:/data
      - ../music:/music
    restart
: unless-stopped

volumes
:
 navidrome_data:

Save the file, after that overture Navidrome:

docker compose up -d

Docker will download the Navidrome image as well as overture the cyndrical tube promptly. Amenable your internet browser as well as go to http://localhost:4533.

You will be incited to construct an admin account. As shortly as logged in, Navidrome will check your songs folder promptly. If you currently have songs documents within the songs catalog, they will show up in your library promptly.

Navidrome Homepage
How I Replaced Music Streaming Services With a Self-Hosted Stack 18

At this point, you currently have a fully desirable spouting backend sprinting in your void. You can upload FLAC, MP3, or any continual format, as well as Navidrome will stream it on final alert.

But Navidrome one by one performs not replace Spotify. It oversees the backend, but the user user interface still genuinely feels inalienable. To diligent the misery, you final alert a proper frontend.

Adding Feishin for a Vibrant Spotify-Favor User interface

Navidrome includes a amassed-in web user interface, but it is amassed more for capability than polish. It works, but it performs not deliver the kind of misery the majority of users intend from a modern-day spouting solution.

Feishin resolves that mischief-maker. It’s a perpetrated Subsonic-proportionate player via a modern-day user interface, streamlined animes, as well as proper pitch upwards administration. It visual glamors as well as genuinely feels much more explained to Spotify, via advice for cds, instrumentalists, playlists, as well as playback matches that behave specifically as you would intend.

Auxiliary notably, Feishin attaches correct to Navidrome as well as streams your songs promptly. To mount Feishin, amenable your Docker Write file once again as well as modernize it to contain Feishin:

services:
  navidrome
:
    image
: deluan/navidrome:latest
    container_name
: navidrome
    ports
:
     - "4533:4533"
    volumes
:
     - navidrome_data:/data
      - ../music:/music
    restart
: unless-stopped
  feishin
:
    image
: ghcr.io/jeffvli/feishin:latest
    container_name
: feishin
    ports
:
     - "9180:9180"
    restart
: unless-stopped

volumes
:
 navidrome_data:

Overture Feishin:

docker compose up -d

As shortly as Feishin is sprinting, amenable it in your internet browser (http://localhost:9180) as well as affix it to Navidrome. Pick Subsonic as the server kind as well as glean in your Navidrome server address, which should be http://localhost:4533 if whatever is sprinting in your void. Then icon in utilising the super same username as well as password you invented previously in Navidrome.

Feishin Homepage
How I Replaced Music Streaming Services With a Self-Hosted Stack 19

As shortly as the rapport is ascertained, Feishin will cheats your totality library, involving instrumentalists, cds, as well as playlists.

Automating Your Assortment Through Lidarr

By hand downloading as well as install as well as arranging songs comes to be dull without arrest. Lidarr automates the totality process. Lidarr oversees instrumentalists you comply with, scours for their cds, downloads them promptly, as well as arranges whatever into your songs library. As shortly as downloaded, Navidrome establishes the neoteric documents promptly, as well as they show up within Feishin without any manual treatment.

Lidarr homepage selections
How I Replaced Music Streaming Services With a Self-Hosted Stack 20

Modify your Docker Write file once again to add Lidarr:

services:
  navidrome
:
    image
: deluan/navidrome:latest
    container_name
: navidrome
    ports
:
     - "4533:4533"
    volumes
:
     - navidrome_data:/data
      - ../music:/music
    restart
: unless-stopped
  feishin
:
    image
: ghcr.io/jeffvli/feishin:latest
    container_name
: feishin
    ports
:
     - "9180:9180"
    restart
: unless-stopped
  lidarr
:
    image
: linuxserver/lidarr:latest
    container_name
: lidarr
    ports
:
     - "8686:8686"
    volumes
:
     - lidarr_config:/config
      - ../music:/music
      - ../downloads:/downloads
    restart
: unless-stopped

volumes
:
  navidrome_data
:
 lidarr_config:

Overture Lidarr:

docker compose up -d

In your internet browser, amenable http://localhost:8686. From listed under, you can add instrumentalists, as well as Lidarr will sift after your library promptly. As shortly as paired via a download man, Lidarr oversees whatever from discovery to company.

You Can Maintain Redoing Your Agglomeration

At this point, you currently have a fully desirable self-hosted songs spouting installment. Navidrome oversees your library as well as spouting, while Feishin delivers the user interface, as well as Lidarr automates library administration. For innumerable users, this is enough to replace Spotify, specifically if you currently preserve your super own songs patchwork.

I purposely retained my installment disallowed to these core contraptions. The aspiration was to construct something raw, reputable, as well as inalienable to preserve. I am comfy sifting after my library manually as well as choosing what to add. But if you stab to go better, there are a few upgrades that can earn it genuinely feel better explained to a complete spouting solution.

Correct currently, your server works lone within your domicile network. Adding personal schedule permits you stream your library from almost everywhere. Tools prefer Tailscale or WireGuard construct a peg rapport to your domicile server, permitting schedule from your mobile phone phone, laptop, or occupational computer system. It’s one of the the majority of impactful upgrades, but it also refers to as for diligent arrangement. Opening schedule beyond your local network arrangements counterclaim bloopers.

Establishment is another locale whereby spouting selections stand out. Album art shows up promptly, artist monikers linger in agreement, as well as whatever is structured as crucial. You can acquire the super same extent of polish utilising beets. It’s a command-pitch metadata supervisor that joins together via MusicBrainz. It can promptly tag tracks, dealing via naming incongruities, download artwork, as well as impose a in agreement folder texture.

Tunes discovery is harder to recreate, but not impossible. Spotify’s references depend on years of listening file as well as proprietary algorithms. Amenable-resource contraptions prefer ListenBrainz can track your listening history as well as collect references based on your habits. Tools prefer Explo can after that earn utility of those references to promptly construct playlists within Navidrome.

Self-hosting selections snag campaign, but it’s fun as well as can also preserve you the cash money you’d or else afford registrations. For instance, you might self-host your images via Immich as well as ditch Google Pics or construct your super own file supervisor utilising Papra.

Related Posts