Navidrome to idealny, samoobsługowy serwer muzyczny dla Raspberry Pi
Streaming muzyki jest cechą współczesnego życia, a większość ludzi jest przyzwyczajona do wygody usług takich jak Spotify i YouTube. Jeśli masz dużą, prywatną kolekcję muzyki, możesz zamiast tego użyć Navidrome do strumieniowego przesyłania ulubionych utworów na urządzenia mobilne i słuchania radia internetowego.
Dlaczego warto używać Navidrome do strumieniowania muzyki z Raspberry Pi?
Gromadzenie pokaźnych bibliotek muzycznych to przyjemna rozrywka dla wielu osób. Pomimo faktu, że znane serwisy streamingowe mogą pochwalić się ogromnymi repozytoriami licencjonowanych utworów, dostęp do mniej znanych muzyków zazwyczaj wymaga płatnej subskrypcji. Co więcej, wśród wielu dostępnych platform streamingowych nie ma pewności, że preferowana usługa będzie stale utrzymywać prawa do każdej kompozycji muzycznej, którą obecnie licencjonuje.
Wybór bezpłatnej subskrypcji dla platform streamingu muzyki może skutkować inwazyjnymi praktykami gromadzenia danych i reklamami, które mogą okazać się dość uciążliwe. Bardziej praktyczną alternatywą byłoby nabycie własnego repertuaru muzycznego poprzez zakup pojedynczych utworów lub albumów, lub poprzez konwersję istniejącej fizycznej kolekcji płyt CD do formatu cyfrowego i osobiste jej strumieniowanie.
Mopidy jest jedną z kilku realnych opcji, które umożliwiają wykorzystanie Raspberry Pi jako streamera muzyki. Dodatkowo, do tego celu można wykorzystać centrum mediów strumieniowych Jellyfin. Warto zauważyć, że integracja Nextcloud na Raspberry Pi zapewnia szerokie możliwości włączenia różnych aplikacji do strumieniowania muzyki.
Navidrome wyróżnia się na tle innych konkurentów, koncentrując się wyłącznie na produkcji muzyki i oferując kilka charakterystycznych atrybutów, w tym możliwość płynnego działania na minimalistycznym sprzęcie, takim jak Raspberry Pi Zero.
Jak zainstalować Navidrome na Raspberry Pi
Aby skonfigurować Navidrome na Raspberry Pi, należy wykonać kilka czynności wstępnych. Po pierwsze, konieczne jest przekształcenie Raspberry Pi w serwer hostingowy poprzez zastosowanie się do szeregu prostych instrukcji. Chociaż instalacja MariaDB i PHP nie jest obowiązkowa dla tego konkretnego przedsięwzięcia, posiadanie ich może okazać się korzystne dla różnych innych intrygujących projektów hostingowych Raspberry Pi. Dodatkowo, upewnij się, że ręcznie wdrożyłeś najnowszą wersję Docker Compose.
Połącz się z Raspberry Pi przez Secure Shell (SSH) i utwórz nową strukturę katalogów, tworząc osobne foldery dla Navidrome i powiązanych z nim plików.
ssh pi@your-pi-local-ip-address
mkdir navidrome navidrome/data
Aby efektywnie zarządzać plikami multimedialnymi, ważne jest utworzenie wyznaczonego miejsca do przechowywania kolekcji muzyki i wideo. Chociaż miejsce to może być zlokalizowane w dowolnym miejscu, sugerujemy wyznaczenie określonego folderu w osobistym katalogu użytkownika jako optymalne rozwiązanie.
mkdir music
Aby przenieść pliki multimedialne z komputera osobistego na Raspberry Pi, zainicjuj nową sesję terminala na swoim urządzeniu i użyj narzędzia Secure Copy (SCP) do replikacji zawartości na Raspberry Pi:
scp -r /path/to/your/music/folder/* pi@your-pi-local-ip-address:~/music/
Aby uzyskać dostęp do katalogu Navidrome przez SSH na Raspberry Pi, użyj interfejsu wiersza poleceń, aby przejść do określonej lokalizacji, a następnie użyj edytora tekstu nano do tworzenia lub edycji plików w tym katalogu.
cd navidrome
nano docker-compose.yml
Dodaj do niego następujące linie:
version: "3"
services:
navidrome:
image: deluan/navidrome:latest
user: 1000:1000
ports:
- "4533:4533"
restart: unless-stopped
environment:
ND_SCANSCHEDULE: 1h
ND_LOGLEVEL: info
ND_SESSIONTIMEOUT: 24h
ND_BASEURL: ""
volumes:
- "/home/pi/navidrome/data:/data"
- "/home/pi/music:/music:ro"
po pierwsze, naciśnij “Ctrl \ + O”, aby wykonać operację cofnięcia, jeśli to konieczne, przed zapisaniem; po drugie, naciśnij “Ctrl \ + X”, aby potwierdzić czynność zapisywania; na koniec naciśnij klawisz “Enter” lub kliknij przycisk “Zapisz” na pasku narzędzi, aby zakończyć proces.
docker-compose -f path/to/docker-compose.yml up --detach
.
docker-compose up -d
Docker Compose został zaprojektowany do wydajnego zarządzania wieloma kontenerami poprzez pobieranie niezbędnych plików obrazów i konfigurowanie kontenerów Navidrome w celu uzyskania optymalnej wydajności. Po zakończeniu procesu konfiguracji można uzyskać dostęp do aplikacji za pośrednictwem przeglądarki internetowej na urządzeniu lokalnym, wpisując adres IP Raspberry Pi (który powinien być wyświetlany jako “your-pi-local-ip-address”), a następnie 4533 w pasku adresu URL.
Aby utworzyć konto użytkownika administracyjnego na tej platformie, należy wprowadzić nazwę użytkownika i bezpieczne hasło, a następnie uwierzytelnić się za pomocą tych poświadczeń, aby uzyskać dostęp. Po zalogowaniu natychmiast zauważysz, że wszystkie Twoje kolekcje muzyczne są łatwo dostępne do przeglądania.
Uczyń swoją instancję Navidrome dostępną w sieci
Uzyskaj dostęp do panelu sterowania rejestratora domeny i przejdź do zaawansowanych ustawień DNS dla swojej domeny. Utwórz nowy rekord A, określając “@” w polu hosta i wprowadzając lokalny adres IP w polu wartości. Dodatkowo ustaw wartość Time to Live (TTL) na najniższy dopuszczalny poziom.
Aby kontynuować niezbędną konfigurację Raspberry Pi, wymagane będzie wygenerowanie nowego pliku konfiguracyjnego Apache.
cd /etc/apache2/sites-available/
sudo nano navidrome.conf
W poprawionym dokumencie należy uwzględnić następujący tekst:
<VirtualHost *:80>
ServerName muo.lol
ProxyPass / http://127.0.0.1:4533/
ProxyPassReverse / http:/127.0.0.1:4533/
ProxyPreserveHost On
</VirtualHost>
Aby korzystać z tej strony internetowej, konieczne jest przypisanie unikalnej nazwy domeny do “muo.lol”. Można to osiągnąć, rejestrując i konfigurując niestandardową domenę za pośrednictwem rejestratora domen lub wybranego dostawcy usług hostingowych. W ten sposób umożliwisz użytkownikom dostęp do witryny przy użyciu określonej domeny zamiast “muo.lol”, co poprawi zarówno funkcjonalność, jak i profesjonalny wygląd.
Podsumowując, wykorzystanie Nano do utworzenia rekordu TXT dla wybranej nazwy hosta jest skuteczną metodą weryfikacji własności domeny. Wykonując serię naciśnięć klawiszy, takich jak “Ctrl \ + O”, a następnie “Ctrl \ + X”, można zapisać i wyjść z Nano, zachowując wszelkie zmiany wprowadzone w edytorze. Aby jeszcze bardziej zwiększyć środki bezpieczeństwa na swojej stronie internetowej, warto rozważyć skorzystanie z Let’s Encrypt i jego narzędzia do automatyzacji, Certbot, w celu pozyskania i wdrożenia certyfikatów i kluczy Transport Layer Security (TLS) dla swojej domeny.
sudo certbot
Wybierz nazwę domeny z podanej listy i naciśnij klawisz Enter, aby kontynuować.
Możesz teraz uzyskać dostęp do instancji Navidrome za pośrednictwem przeglądarki internetowej, korzystając z określonej nazwy domeny, a wszystkie połączenia zostały przekonwertowane na bezpieczny protokół HTTPS.
Interfejs sieciowy Navidrome
Interfejs użytkownika platformy Navidrome został zaprojektowany z myślą o wysokim stopniu użyteczności i zawiera główne menu, które jest wyraźnie wyświetlane po lewej stronie ekranu. Jeśli ten układ zajmuje zbyt dużo miejsca, użytkownicy mogą skorzystać z ikony hamburgera znajdującej się bezpośrednio powyżej, która pozwala na wygodne zwinięcie struktury menu.
Przeglądaj naszą obszerną bibliotekę muzyki za pomocą różnych środków, takich jak wykonawcy, tytuły utworów lub albumy. Ponadto możesz przeglądać swoje ulubione utwory, te, które były często odtwarzane, te, które były odtwarzane w ostatnim czasie i nowo dodane nagrania, aby uzyskać lepsze wrażenia słuchowe.
Jeśli twoje preferencje muzyczne są niepewne lub szukasz różnorodności, możesz zdecydować się na losowo wygenerowaną listę odtwarzania. Niestety, obecny interfejs sieciowy nie oferuje możliwości tworzenia improwizowanych miksów skupionych wokół konkretnego utworu; niemniej jednak funkcja ta została zaplanowana do włączenia w nadchodzącej aktualizacji i jest dostępna w niektórych kompatybilnych aplikacjach.
Interfejs albumu prezentuje różne funkcje, takie jak odtwarzanie całych albumów, dodawanie ulubionych i ocen dla określonych utworów oraz układanie ich w listy odtwarzania lub kolejki do przyszłego słuchania.
Interfejs użytkownika zawiera szereg funkcji na prawym panelu, składających się z trzech niezdefiniowanych symboli, które reprezentują różne operacje. Kliknięcie początkowej ikony powoduje aktualizację wizualnego wyświetlacza o bieżące informacje. Kolejne kliknięcie generuje zestaw wskaźników odnoszących się do instalacji Navidrome, obejmujących czas jej działania i całkowitą liczbę katalogów. Dodatkowo, wybierając trzeci symbol, dostępny jest wybór między opcjami szybkiego lub kompleksowego skanowania w celu przetworzenia archiwum muzycznego, co może wymagać dłuższego czasu w zależności od ilości przechowywanych danych.
Ostatnia opcja menu dotyczy zadań administracyjnych i zawiera podopcje umożliwiające dostosowanie indywidualnego interfejsu użytkownika. Dodatkowo masz możliwość dodawania lub usuwania użytkowników, a także uzyskiwania dostępu do rejestru wcześniej używanych urządzeń klienckich i aplikacji.
Dodaj stacje radiowe do Navidrome
Oczywiście, podczas gdy korzystanie z osobistej selekcji muzycznych skarbów może z czasem stać się monotonne, radio służy jako wyjątkowy sposób na odkrywanie nowych utworów zarówno w ramach preferowanego gatunku, jak i poza nim.
Chociaż przeglądanie radia internetowego jest łatwe za pośrednictwem przeglądarki internetowej, a zbudowanie radia internetowego Raspberry Pi z obsługą dotykową jest również wykonalne, włączenie stacji radiowych do interfejsu internetowego Navidrome umożliwia użytkownikom płynny dostęp do ich stacji radiowych i biblioteki multimediów z jednego miejsca.
Aby włączyć stację radiową na Navidrome, wybierz opcję “Radios” i podaj nazwę początkowej stacji nadawczej. Wprowadź adres URL streamingu stacji wraz z opcjonalnym adresem URL strony głównej stacji. Po wprowadzeniu wymaganych informacji kliknij przycisk “Zapisz”, aby sfinalizować dodawanie. Możesz dodać wiele stacji radiowych w sekcji “Radia”, a wszystkie stacje będą dostępne za pośrednictwem tej karty.
Aplikacje mobilne dla Navidrome
Włączając funkcjonalność progresywnej aplikacji internetowej do przyjaznego dla użytkownika interfejsu naszej instalacji Navidrome, zapewniliśmy optymalną wydajność na wszystkich urządzeniach, w tym tych z mniejszymi ekranami. Należy jednak zauważyć, że kompatybilność wykracza poza ten konkretny interfejs sieciowy, ponieważ Navidrome jest w pełni kompatybilny z szeroką gamą klientów Subsonic. Dzięki wielu dostępnym opcjom, użytkownicy mogą łatwo odkryć i pobrać preferowane aplikacje Subsonic, przeprowadzając proste wyszukiwanie w wybranym sklepie z aplikacjami.
Navidrome ułatwia strumieniowanie i zarządzanie kolekcją muzyczną
Wykorzystując serwer Navidrome działający na Raspberry Pi, możesz nadawać spersonalizowane utwory muzyczne z dowolnego miejsca na świecie. Możliwości Raspberry Pi wykraczają jednak daleko poza tę funkcjonalność. Dla osób z obszerną biblioteką filmów, które wolą nie polegać na usługach streamingowych, takich jak Netflix, Disney czy HBO, Jellyfin oferuje realną alternatywę dla instalacji.