Notefix/1.Projects/Персональний сайт портфоліо/Self Hosted/Navidrome.md

7 KiB
Raw Blame History

Navidrome — це один із найкращих сучасних опенсорсних серверів для стримінгу власної музичної колекції. Якщо у вас є велика медіатека на жорстких дисках (у форматах MP3, FLAC, AAC тощо) і ви хочете мати свій власний «домашній Spotify», не залежачи від хмарних підписок, Navidrome підходить для цього ідеально.

🎧 Огляд Navidrome: Чому він крутий?

  • Неймовірна швидкість та легкість: Написаний на Go та React, він споживає мінімум ресурсів оперативної пам'яті та процесора. Працює стабільно навіть на слабкому залізі чи Raspberry Pi.

  • Транскодування на льоту: Якщо у вас вся музика у «важкому» FLAC, а ви слухаєте її в дорозі через мобільний інтернет, Navidrome може автоматично стискати аудіопотік (наприклад, в OPUS чи MP3), щоб економити трафік.

  • Сумісність із Subsonic API: Це головна фішка. Navidrome використовує перевірений часом стандарт (Subsonic/OpenSubsonic API). Це означає, що вам не потрібно обмежуватися лише веб-інтерфейсом — до нього підходять десятки вже створених крутих плеєрів для смартфонів та ПК.

  • Розумний менеджмент: Автоматично підтягує обкладинки альбомів, біографії виконавців, підтримує роботу з тегами та файлами синхронізованих текстів пісень (.lrc).

🛠️ Як встановити Navidrome через Docker Compose

Найбільш надійний, чистий та ізольований спосіб розгортання — використання Docker. Оскільки ви, ймовірно, керуєте сервісами у домашній інфраструктурі, нижче наведено стандартний конфіг docker-compose.yml.

Крок 1: Підготовка папок

Створіть директорію для проєкту (наприклад, у домашній папці):

Bash

mkdir -p ~/navidrome && cd ~/navidrome

Крок 2: Створення файлу конфігурації

Створіть файл docker-compose.yml з наступним вмістом:

YAML

version: "3"
services:
  navidrome:
    image: deluan/navidrome:latest
    container_name: navidrome
    user: "1000:1000" # Замініть на PUID:PGID вашого користувача в системі
    ports:
      - "4533:4533"
    restart: unless-stopped
    environment:
      ND_SCANSCHEDULE: "1h"         # Як часто сканувати папку на наявність нових треків
      ND_LOGLEVEL: "info"
      ND_SESSIONTIMEOUT: "24h"
      ND_DEFAULTTHEME: "Dark"
    volumes:
      - "./data:/data"              # Папка для бази даних та кешу Navidrome
      - "/шлях/до/вашої/музики:/music:ro" # Абсолютний шлях до вашої музичної бібліотеки (тільки читання)

⚠️ Важливо: Обов'язково змініть /шлях/до/вашої/музики на реальний шлях, де на вашому сервері лежать аудіофайли. Прапорець :ro (read-only) гарантує, що сервер випадково нічого не видалить і не змінить у вашій колекції.

Крок 3: Запуск

Запустіть контейнер у фоновому режимі:

Bash

docker compose up -d

Після цього відкрийте браузер за адресою http://IP_вашого_сервера:4533. При першому вході система попросить вас створити обліковий запис адміністратора, після чого почнеться індексація вашої музики.

📱 Мобільні додатки для роботи з Navidrome

Оскільки сервер сумісний із Subsonic API, вибір клієнтів величезний. У налаштуваннях додатків зазвичай достатньо вказати адресу вашого сервера (http://IP:4533), логін та пароль.

Для Android 🤖

  1. Symfonium (Рекомендовано): Мабуть, найкращий аудіоплеєр для Android на сьогодні. Він платний (має тріал-період), але пропонує сучасний інтерфейс у стилі Material You, неймовірно потужне офлайн-кешування, розумні плейлисти, підтримку Android Auto та Chromecast.

  2. Tempo: Чудовий безкоштовний опенсорсний клієнт, орієнтований саме на Subsonic-сервери. Має чистий дизайн, що нагадує YouTube Music.

  3. DSub / Subtracks: Класичні перевірені часом додатки, легкі та стабільні, чудово працюють із великими бібліотеками в офлайн-режимі.

Для iOS (iPhone / iPad) 🍏

  1. Agin Music: Новий та дуже перспективний опенсорсний клієнт із підтримкою синхронізованого тексту пісень, AirPlay та відмінним темним режимом.

  2. play:Sub: Потужний та дуже популярний комерційний клієнт для iOS. Максимально стабільний, з крутим кешуванням треків для поїздок без інтернету.

  3. Substreamer / Amperfy: Хороші безкоштовні альтернативи з лаконічним дизайном та базовим набором функцій (плейлисти, офлайн, пошук).

💻 Бонус: Клієнти для ПК

Якщо ви хочете слухати музику на комп'ютері не через вкладку браузера, зверніть увагу на додаток Feishin (доступний для Windows, macOS та Linux). Це сучасний десктопний плеєр, який перетворює Navidrome на повну візуальну копію Spotify або Apple Music.