База знаний
Navidrome на Synology: домашняя музыкальная медиатека с Amperfy
Пошаговая установка Navidrome на Synology через Container Manager: подключение Amperfy, удалённый доступ, проверка медиатеки и резервное копирование.
СейчасКак устроена связка Synology, Navidrome и Amperfy
- Как устроена связка Synology, Navidrome и Amperfy
- Что потребуется
- Подготовка папок и сервисного пользователя
- Установка Navidrome через Container Manager
- Первое сканирование и проверка тегов
- Подключение Amperfy
- Полезные сценарии
- Прослушивание дома
- Прослушивание вне дома
- Прослушивание без сети
- Резервное копирование и восстановление
- Обновление и откат Navidrome
- Типичные проблемы
- Проверка готовой системы
- Официальные источники
- Следующий шаг
- Связанные материалы
Эта связка лежит в основе моей домашней медиасистемы: Synology хранит музыкальный архив, Navidrome превращает его в личный стриминговый сервис, а Amperfy используется для прослушивания на iPhone.
Музыка остаётся в обычных файлах на NAS. Navidrome индексирует коллекцию и предоставляет веб-интерфейс и программный интерфейс Subsonic (API). Сервер можно обновить или перенести, не затрагивая оригиналы.
Как устроена связка Synology, Navidrome и Amperfy
flowchart LR
F["Музыкальные файлы"] --> N["Synology NAS"]
N --> V["Navidrome"]
V --> W["Веб-интерфейс"]
V --> A["Amperfy на iPhone"]
A --> O["Офлайн-загрузка и CarPlay"]
N --> B["Резервная копия"]У компонентов разные задачи:
- Synology хранит аудиофайлы и резервные копии.
- Navidrome сканирует теги, создаёт каталог, управляет пользователями, плейлистами и воспроизведением.
- Amperfy подключается через Subsonic API и отвечает за мобильное прослушивание.
- Tailscale или другая частная сеть обеспечивает доступ вне дома без прямой публикации порта Navidrome.
Navidrome совместим с Subsonic API v1.16.1 с отдельными исключениями и постепенно получает расширения OpenSubsonic. Полноценного просмотра исходных папок у него нет: соответствующие API-запросы возвращают смоделированное дерево вида /Artist/Album/01 - Song.mp3.
При монтировании музыкальной папки с :ro Navidrome не сможет изменить оригинальные файлы. Новые альбомы добавляются через File Station, SMB или другой файловый инструмент, после чего сервер обновляет индекс.
Что потребуется
Перед установкой проверьте:
/volume1/music./volume1/docker/navidrome/data.Если Container Manager отсутствует в Package Center, проверьте совместимость модели и архитектуры NAS на сайте Synology. Для несовместимой модели понадобится другой хост.
Базовая подготовка DSM описана в руководстве Synology NAS с нуля: полная базовая настройка DSM для дома.
Album, Album Artist, номера треков и дисков, сначала исправьте метаданные.Подготовка папок и сервисного пользователя
Создайте структуру:
/volume1/music
/volume1/docker/navidrome/dataВ первой папке находятся FLAC, ALAC, MP3 и другие исходные файлы. Во второй Navidrome хранит базу и кэш. Файл Docker Compose находится в /volume1/docker/navidrome.
Создайте в DSM отдельного пользователя, например navidrome. Дайте ему:
- чтение музыкальной папки;
- чтение и запись в
/volume1/docker/navidrome/data; - никаких административных прав.
Для Compose понадобятся числовые идентификаторы пользователя и группы (UID и GID). Их можно посмотреть через SSH:
id navidromeПример результата:
uid=YOUR_UID(navidrome) gid=YOUR_GID(users)Подставьте числа в Compose-файл. Каталог data должен быть доступен этому UID и GID на запись, а музыкальная папка — на чтение. Официальный образ Navidrome не использует переменные PUID и PGID: пользователя нужно задавать директивой user. После проверки SSH можно снова отключить.
Установка Navidrome через Container Manager
Откройте Container Manager → Проект → Создать и укажите:
- имя проекта:
navidrome; - путь:
/volume1/docker/navidrome; - источник Compose: файл, созданный вручную.
Используйте конфигурацию:
services:
navidrome:
image: deluan/navidrome:0.63.2
container_name: navidrome
user: "YOUR_UID:YOUR_GID"
ports:
- "4533:4533"
restart: unless-stopped
environment:
ND_LOGLEVEL: info
ND_SCANNER_SCHEDULE: 1h
ND_SESSIONTIMEOUT: 24h
ND_ENABLEINSIGHTSCOLLECTOR: "false"
# В Navidrome 0.63 общий доступ включён по умолчанию; здесь он отключён.
ND_ENABLESHARING: "false"
# Ежедневная копия базы в /data/backups.
ND_BACKUP_PATH: /data/backups
ND_BACKUP_SCHEDULE: "0 3 * * *"
ND_BACKUP_COUNT: "7"
volumes:
- /volume1/docker/navidrome/data:/data
- /volume1/music:/music:roЗамените YOUR_UID:YOUR_GID значениями сервисного пользователя. При другом расположении музыки измените левую часть второго volume.
Подключение :ro оставляет музыкальную папку доступной контейнеру только для чтения. Пользователь из директивы user должен иметь запись в /data и чтение /music, иначе контейнер не создаст базу или покажет пустую библиотеку.
Запустите проект и откройте:
http://IP-АДРЕС-SYNOLOGY:4533При первом входе создайте административную учётную запись.
latest усложняет контроль обновлений и откат.Первое сканирование и проверка тегов
Для первого запуска достаточно одного тестового альбома. Дождитесь завершения сканирования и проверьте исполнителя, название, число треков и обложку. Большая коллекция может заметно нагружать диски и обрабатываться несколько часов.
Затем проверьте обычный альбом, сборник Various Artists, многодисковое издание и один файл каждого регулярно используемого формата.
Минимальный полезный набор тегов:
| Тег | Назначение |
Title | Название трека |
Artist | Исполнитель трека |
Album | Название альбома |
Album Artist | Основной исполнитель альбома |
Track Number | Позиция трека |
Disc Number | Номер диска |
Year | Год издания |
Compilation | Признак сборника |
Если альбом распался на несколько карточек, сначала сравните Album Artist у всех треков. Для сборников проверьте признак compilation. Исправлять файлы можно через MusicBrainz Picard, Mp3tag, beets или другой редактор тегов.
Подключение Amperfy
Amperfy — клиент для iPhone, iPad и Mac. Он подключается к Navidrome через Subsonic API; отдельный плагин сервера для этого подключения не нужен.
В опубликованных релизах проекта заявлены офлайн-загрузка и серверное транскодирование, CarPlay, бесшовное воспроизведение (gapless playback) для подходящих форматов, ReplayGain, эквалайзер, Siri и Shortcuts, оценки, избранное и scrobbling. Эти возможности относятся к разным версиям; фактическая совместимость зависит от кодека, платформы и настроек сервера, поэтому проверяйте нужный сценарий на своей связке.
Ветка 2.x требует iOS, iPadOS или macOS 26.
Для подключения:
- Установите Amperfy из App Store.
- Добавьте Subsonic-аккаунт.
- Укажите базовый URL Navidrome, например
http://IP-АДРЕС-SYNOLOGY:4533, без/rest. - Введите логин и пароль пользователя Navidrome.
- Запустите синхронизацию библиотеки.
- Проверьте воспроизведение альбома.
- Загрузите альбом, включите авиарежим и проверьте офлайн-доступ.
- Если используете автомобиль, отдельно проверьте очередь и навигацию в CarPlay.
Протестируйте реальные форматы архива, например FLAC, ALAC и Opus. Работа одного MP3 не подтверждает совместимость всей медиатеки.
Для каждого человека лучше создать отдельного пользователя Navidrome, чтобы не смешивать историю, избранное и плейлисты.
Полезные сценарии
Прослушивание дома
Телефон и NAS находятся в одной локальной сети. Amperfy подключается по локальному адресу, синхронизирует каталог и воспроизводит тестовый альбом. Результат подтверждается совпадением альбома в веб-интерфейсе и приложении.
Прослушивание вне дома
Установите Tailscale на Synology и iPhone, авторизуйте устройства в одной частной сети и укажите в Amperfy адрес NAS внутри неё:
http://100.x.y.z:4533Можно использовать имя MagicDNS, если оно включено. Выключите Wi-Fi на телефоне и проверьте воспроизведение через мобильную сеть.
Прослушивание без сети
Скачайте альбом в Amperfy, включите авиарежим и запустите несколько треков. Этот тест нужно повторить после изменения настроек кэша или транскодирования.
Резервное копирование и восстановление
Защищайте три части системы отдельно:
/volume1/music— исходный музыкальный архив;/volume1/docker/navidrome/data— база, пользователи, плейлисты, история и кэш;- Compose-файл в
/volume1/docker/navidrome— конфигурация проекта.
Встроенный механизм Navidrome при этой конфигурации создаёт ежедневные копии базы в /data/backups и хранит семь файлов. Он не копирует музыку и Compose-файл.
В Hyper Backup включите общие папки, содержащие:
/volume1/music
/volume1/docker/navidromeПроверьте появление встроенной копии:
ls -lah /volume1/docker/navidrome/data/backupsРучную копию можно создать из каталога проекта:
cd /volume1/docker/navidrome
sudo docker-compose run --rm navidrome backup createsudo docker-compose run --rm navidrome backup restore /data/backups/ИМЯ_ФАЙЛА, заменив ИМЯ_ФАЙЛА на выбранную копию. Запустите проект и проверьте пользователей, плейлисты и избранное.RAID и SHR помогают при отказе накопителя, но не заменяют резервную копию. Практическая схема 3-2-1 разобрана в материале Домашнее облако на Synology: Immich и резервная копия 3-2-1.
Обновление и откат Navidrome
Перед обновлением:
- Проверьте свежую копию базы.
- Сохраните весь каталог
/volume1/docker/navidromeотдельно. - Запишите текущий тег образа.
- Откройте список релизов Navidrome.
- Прочитайте изменения между установленной и новой версиями.
- Замените тег в Compose-файле и пересоберите проект.
- Проверьте журнал, веб-интерфейс, Amperfy, пользователей и плейлисты.
Не удаляйте /data при пересборке. Если новая версия не запускается, верните прежний тег. Если обновление несовместимо изменило базу, остановите сервис и восстановите проверенную копию.
Типичные проблемы
| Симптом | Возможная причина | Что проверить |
| Библиотека пустая | Ошибка пути или прав | Volume /music, UID/GID, чтение папки |
| Контейнер не запускается | Нет записи в /data | Владелец и права каталога данных |
| Альбом разделён | Различается Album Artist | Теги всех треков |
| Не видны исходные папки | Ограничение Navidrome | Используйте теговый каталог или сервер с просмотром по папкам |
| Amperfy не подключается | Неверный URL или сеть | Адрес без /rest, порт 4533, доступность NAS |
| С мобильной сети не работает | Нет частного маршрута | Tailscale на NAS и телефоне, правила доступа |
| Некоторые форматы не играют | Ограничение клиента или транскодирования | Формат файла и профиль транскодирования |
| После пересборки пропали настройки | Не подключён постоянный /data | Volume данных в Compose |
| Новая музыка не появилась | Сканирование не завершено | Журнал и ND_SCANNER_SCHEDULE |
Журнал доступен в Container Manager или через команду:
sudo docker logs --tail 200 navidromeПроверка готовой системы
:ro./data/backups появляется свежий файл.Система готова, если тестовый альбом находится в веб-интерфейсе и Amperfy, воспроизводится дома и через частную сеть, доступен офлайн, а данные сохраняются после перезапуска.
Официальные источники
- Navidrome: установка через Docker
- Navidrome: совместимость с Subsonic API
- Релизы Navidrome
- Релизы Amperfy
- Amperfy в App Store
- Synology Container Manager
- Tailscale на Synology
Следующий шаг
Своя музыка вместо стримингов: Plex и пять альтернатив для Synology
Связанные материалы
- Статья: Как один музыкальный архив превратился в домашнюю медиасистему
- Блог: Данные важнее модели
- База знаний: Synology NAS с нуля: полная базовая настройка DSM для дома
Домашнюю медиасистему полезно проверять целиком: от хранения исходных файлов до удалённого доступа и восстановления после сбоя.
Если захотите обсудить, как это применить у себя или в команде — пишите в Telegram @pimenov
Если хотите разобрать свою задачу — напишите мне Если хотите разобрать свою задачу — напишите мне.
Можно прийти с идеей, черновым контекстом или уже живой задачей. Помогу быстро понять, где реальный следующий шаг, а где лишний шум.
Обычно хватает 2–3 сообщений, чтобы понять, могу ли я здесь реально помочь и в каком формате лучше двигаться дальше.
Дальше по теме
Практическое руководство по выбору S3-хранилища: российские и зарубежные сервисы, расходы, совместимость, риски оплаты и тест перед миграцией.