Перейти к основному содержимому
  1. Posts/
  2. Media Servers/

Audiobookshelf: лучший self-hosted сервер аудиокниг

··654 слов·4 минут· loading · loading · ·
Stilicho2011
Автор
Stilicho2011
Пишу о homelab, self-hosting, автоматизации и open-source решениях
Оглавление
Медиасерверы - This article is part of a series.
Part : This Article

Audiobookshelf - лучший self-hosted сервер аудиокниг
#

Если вам понравилась эта статья, вы можете поддержать автора, став спонсором на Boosty (ссылка в разделе «Контакты»).


Вступление
#

Привет! Ты на сайте Stilicho2011, и сегодня мы поговорим об отличной self-hosted платформе - Audiobookshelf.

Если у тебя накопилось много аудиокниг, и ты хочешь слушать их с любого устройства, синхронизировать прогресс и не зависеть от сторонних сервисов - оставайся, будет интересно!


Что такое Audiobookshelf?
#

Audiobookshelf - это бесплатное и полностью открытое веб-приложение, которое превращает твой сервер в полноценную аудиобиблиотеку.

Сайт проекта: audiobookshelf.org
Исходный код: github.com/advplyr/audiobookshelf

Основные возможности:

  • Загрузка и структурирование аудиокниг
  • Прослушивание через браузер и мобильное приложение
  • Синхронизация прогресса между устройствами
  • Закладки и заметки
  • Полный контроль и конфиденциальность

Установка через Docker
#

Проще всего установить Audiobookshelf с помощью Docker. Вот минимальный docker-compose.yml, который я использовал в ролике:

services:
  audiobookshelf:
    image: ghcr.io/advplyr/audiobookshelf:latest
    container_name: audiobookshelf
    #ports:
    #  - 13378:80
    volumes:
      - /mnt/media:/audiobooks
      - /mnt/media:/podcasts
      - /home/user/docker/audiobookshelf/config:/config
      - /home/user/docker/audiobookshelf/metadata:/metadata
    environment:
      - TZ=Europe/Moscow
    restart: unless-stopped
    security_opt:
      - no-new-privileges:true
    networks:
      proxy:
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.audiobookshelf.entrypoints=http"
      - "traefik.http.routers.audiobookshelf.rule=Host(`audiobookshelf.domain.ru`)"
      - "traefik.http.middlewares.audiobookshelf-https-redirect.redirectscheme.scheme=https"
      - "traefik.http.routers.audiobookshelf.middlewares=audiobookshelf-https-redirect"
      - "traefik.http.routers.audiobookshelf-secure.entrypoints=https"
      - "traefik.http.routers.audiobookshelf-secure.rule=Host(`audiobookshelf.domain.ru`)"
      - "traefik.http.routers.audiobookshelf-secure.tls=true"
      - "traefik.http.routers.audiobookshelf-secure.service=audiobookshelf"
      - "traefik.http.services.audiobookshelf.loadbalancer.server.port=80"
      - "traefik.docker.network=proxy"

networks:
  proxy:
    external: true

Запуск сервиса

docker compose up -d

После запуска - открой в браузере https://audiobookshelf.domain.ru

Интерфейс и возможности
#

После первого входа можно:

  • добавить папки с аудиокнигами;
  • автоматически подтянуть обложки и описания;
  • использовать удобный встроенный плеер;
  • отслеживать прогресс по книгам;
  • работать с закладками и заметками.

Поддерживаемые форматы: .mp3, .m4b (с поддержкой глав), ID3-теги и встроенные обложки. Доступен мобильный режим (через PWA или браузер), а также многопользовательский режим.


Безопасность и доступ из сети
#

Рекомендуется разместить Audiobookshelf за reverse-proxy, например Traefik + Authelia, Authentik, Keycloak, Zitadel, или Nginx + Basic Auth.

Также стоит подключить SSL-сертификат Let’s Encrypt, чтобы слушать книги из любой точки мира по HTTPS.


Плюсы и минусы
#

Плюсы
#

  • Бесплатно и с открытым исходным кодом.
  • Простой и удобный интерфейс.
  • Отличная синхронизация и мобильная поддержка.
  • Работает полностью локально.

Минусы
#

  • Нет поиска по содержимому книг.
  • Некоторые форматы требуют перекодировки.
  • Нельзя стримить напрямую из облачных хранилищ.

Не только аудиокниги
#

Название немного вводит в заблуждение - на деле Audiobookshelf умеет заметно больше, чем просто хранить .mp3:

  • Подкасты. Отдельный тип библиотеки - можно подписаться на RSS-канал, и Audiobookshelf сам будет скачивать новые эпизоды по расписанию, без сторонних подкаст-клиентов.
  • Электронные книги и комиксы. Помимо аудио, поддерживаются .epub, .pdf, а также комиксы в .cbz/.cbr - удобно, если хочется собрать в одном месте всю домашнюю библиотеку, а не только аудиоформат.
  • Метаданные из внешних источников. Обложки, описания, авторов и серии можно подтягивать автоматически - для аудиокниг это Audible, для остального - OpenLibrary, Google Books и другие провайдеры.
  • Гибкие права пользователей. Для каждого аккаунта отдельно настраивается доступ к конкретным библиотекам, разрешение на скачивание файлов и т.д. - удобно, если сервером пользуется вся семья.
  • Таймер сна, регулировка скорости воспроизведения, навигация по главам - базовые, но важные для прослушивания аудиокниг вещи, которые есть из коробки.

Мобильный доступ
#

Помимо веб-интерфейса, у проекта есть официальные приложения для Android и iOS (тоже открытый исходный код) - с оффлайн-загрузкой книг, фоновым воспроизведением и поддержкой Android Auto/CarPlay. Прогресс прослушивания синхронизируется между всеми устройствами автоматически, так что можно спокойно начать слушать в машине через CarPlay, а продолжить вечером в браузере на ноутбуке.


Как начать пользоваться
#

  1. Поднять контейнер по docker-compose.yml выше (или через LXC/VM на своём сервере).
  2. Смонтировать папки с аудиокнигами/подкастами/книгами в соответствующие volume.
  3. Зайти в веб-интерфейс, создать администратора и настроить библиотеки (аудиокниги, подкасты, книги - отдельно).
  4. Дать Audiobookshelf просканировать файлы - обложки и метаданные подтянутся автоматически.
  5. Поставить мобильное приложение и войти под тем же аккаунтом для синхронизации прогресса.
  6. Закрыть сервис за reverse-proxy с SSL, как описано в разделе выше.

Заключение
#

Audiobookshelf - отличное self-hosted решение для хранения и прослушивания не только аудиокниг, но и подкастов, электронных книг и комиксов. Устанавливается за несколько минут через Docker, отдаёт полный контроль над своей медиатекой и не зависит от сторонних облачных сервисов. Если у вас уже есть домашний сервер - это один из тех проектов, которые стоит попробовать в первую очередь.

Медиасерверы - This article is part of a series.
Part : This Article

Related

Dozzle: удобный просмотр логов Docker-контейнеров в реальном времени

·1373 слов·7 минут· loading · loading
Пошаговый обзор Dozzle - лёгкого self-hosted инструмента для просмотра логов Docker-контейнеров в реальном времени через веб-интерфейс. Установка через Docker Compose, настройка авторизации, мультихост-режим через агенты и рекомендации по безопасности docker.sock.

Diun: уведомления об обновлениях Docker-образов

··931 слово·5 минут· loading · loading
Подробная инструкция по установке и настройке Diun для отслеживания обновлений Docker-образов. Рассмотрены шаги по развертыванию, интеграции с уведомлениями и автоматизации мониторинга, чтобы своевременно обновлять контейнеры и повышать безопасность системы.

Обзор Linkwarden: Современный self-hosted менеджер закладок

··632 слов·3 минут· loading · loading
Пошаговая инструкция по установке и настройке Linkwarden для безопасного управления ссылками. Рассмотрены установка сервера, настройка пользователей, интеграция с браузером и мобильными устройствами, а также базовые настройки безопасности.