Tropic Host

Audiobookshelf на VPS: власна бібліотека аудіокниг і подкастів

5 хв. читання
Tropic
Audiobookshelf на VPS: власна бібліотека аудіокниг і подкастів

Audiobookshelf: як створити власний сервер аудіокниг і подкастів

Почніть слухати книжку на комп'ютері, продовжіть із того самого місця на телефоні, завантажте її перед поїздкою та збережіть прогрес після переходу між пристроями — для цього не потрібна ще одна платна служба. Audiobookshelf перетворює вашу аудіоколекцію на охайну онлайн-бібліотеку з обкладинками, розділами, застосунками й окремими профілями для всієї родини.

Це не магазин і не джерело безкоштовних книжок. Користувачі самостійно додають законно отримані аудіофайли без несумісного DRM-захисту. Натомість книжки, історія прослуховування та налаштування залишаються на власному сервері.

Що таке Audiobookshelf?

Audiobookshelf — безкоштовний сервер аудіокниг і подкастів із відкритим кодом для self-hosted розгортання. Він сканує папки з медіафайлами, організовує бібліотеку за авторами та серіями, отримує метадані й обкладинки, а потім дає змогу слухати колекцію через браузер або мобільний застосунок.

Практично це персональний потоковий сервіс, каталог якого ви створюєте самі. Сервер зберігає бібліотеку та прогрес прослуховування, а телефон, планшет або комп'ютер працює як клієнт. Тому можна зупинити книжку на одному пристрої й продовжити на іншому зі збереженої позиції.

Audiobookshelf може працювати вдома на NAS або міні-ПК. VPS зручніший, якщо потрібен доступ із будь-якої мережі без постійно увімкненого домашнього комп'ютера, налаштування перенаправлення портів чи залежності від домашнього інтернету.

Що вміє Audiobookshelf?

Синхронізація прогресу між пристроями

Кожен користувач має власну збережену позицію, історію та закладки. Доступні вебінтерфейс, Progressive Web App і офіційні мобільні клієнти для Android та iOS. Книжку можна заздалегідь завантажити на телефон і слухати без інтернету.

Окремі облікові записи

На одному сервері можна створити кілька користувачів, не змішуючи їхній прогрес. Адміністратор керує доступом до бібліотек і дозволами, а за потреби може обмежувати вміст тегами. Кожен користувач має власний список книжок у процесі, історію та закладки.

Організація бібліотеки

Сервіс отримує назви, описи, авторів і обкладинки із зовнішніх джерел, групує книжки за авторами та серіями, дає змогу виправляти розділи й контролювати порядок. Кілька MP3-файлів можна об'єднати в один M4B, а обкладинку та метадані — вбудувати у файл. Перед зміною оригінальних файлів краще зробити копію бібліотеки.

Автоматичне завантаження подкастів

Подкаст можна додати за назвою, RSS URL або OPML-файлом, після чого налаштувати автоматичне завантаження нових епізодів. Сервіс не транслює епізод безпосередньо: файл спочатку зберігається на сервері. Це дає змогу архівувати епізоди, які можуть зникнути, але потребує дискового простору.

Електронна книжка поруч з аудіокнигою

У папку книжки можна покласти файл EPUB, PDF, CBR, CBZ, AZW3 або MOBI, щоб аудіо й текст відкривалися з одного запису бібліотеки. Вбудований читач простий і не замінює Calibre-Web або Kavita.

Для кого Audiobookshelf?

Сервіс особливо корисний у таких сценаріях:

  • у вас уже є колекція аудіокниг у MP3, M4B, M4A або інших поширених форматах;
  • ви слухаєте на кількох пристроях і хочете синхронізації;
  • бібліотекою користуються кілька членів родини;
  • ви хочете зберігати власний архів подкастів;
  • вам потрібен повний контроль над файлами, обліковими записами та резервними копіями;
  • звичайна хмарна папка стала незручною через відсутність обкладинок, розділів і історії прослуховування.

Якщо ви слухаєте лише одну-дві книжки на одному телефоні, окремий сервер може бути непотрібним. Audiobookshelf стає найкориснішим, коли колекція зростає або потребує постійного віддаленого доступу.

Який сервер потрібен Audiobookshelf?

У проєкту немає універсального офіційного мінімуму: навантаження залежить від розміру бібліотеки, кількості користувачів, сканування файлів і потреби в транскодуванні аудіо. Для невеликої особистої колекції можна орієнтуватися на таку стартову конфігурацію:

СценарійCPURAMДиск
1–2 користувачі, невелика бібліотека1 vCPU1 GBвід 30–40 GB
Родина і кілька одночасних підключень2 vCPU2 GBвід 60–100 GB
Велика бібліотека, часте сканування та обробка файлів2–4 vCPU4 GBвідповідно до розміру колекції

Це практична порада, а не офіційний мінімум. Головний ресурс — диск. Десятигодинна книжка при 64–128 Kbit/s займає приблизно 0,3–0,6 GB, тому сто книжок потребують близько 30–60 GB без подкастів і резервних копій. Розумно почати з невеликого VPS, який пізніше можна оновити.

Як встановити Audiobookshelf за допомогою Docker Compose

Розробники рекомендують Docker як спосіб встановлення. Нижче передбачається, що Docker і плагін Compose уже встановлені на Ubuntu або Debian.

Створіть каталог проєкту та папки даних:

mkdir -p /opt/audiobookshelf/{config,metadata,audiobooks,podcasts}
cd /opt/audiobookshelf

Створіть файл compose.yml:

services:
  audiobookshelf:
    image: ghcr.io/advplyr/audiobookshelf:latest
    container_name: audiobookshelf
    ports:
      - "13378:80"
    volumes:
      - ./config:/config
      - ./metadata:/metadata
      - ./audiobooks:/audiobooks
      - ./podcasts:/podcasts
    environment:
      - TZ=UTC
    restart: unless-stopped

Запустіть контейнер:

docker compose up -d

Після запуску панель тимчасово буде доступна за адресою:

http://SERVER_IP:13378

Під час першого входу створіть обліковий запис root-адміністратора, потім додайте бібліотеку типу Books і вкажіть каталог /audiobooks. Для подкастів створіть окрему бібліотеку зі шляхом /podcasts.

Як правильно організувати папки аудіокниг

В Audiobookshelf одна книжка зазвичай відповідає одній папці. Найзрозуміліша структура виглядає так:

/audiobooks/
  Author/
    Series/
      01 - Book title/
        01 - Chapter.mp3
        02 - Chapter.mp3
        cover.jpg

Для окремої книжки рівень серії можна пропустити. Один M4B-файл також можна зберігати у власній папці книжки.

Структура важлива: якщо кілька книжок одного автора покласти в одну спільну папку, сканер може об'єднати їх в один запис бібліотеки. Краще впорядкувати файли до першого повного сканування. Переміщення книжки між бібліотеками вважається створенням нового елемента, тому метадані та прогрес автоматично не переносяться.

Як безпечно відкрити бібліотеку в інтернеті

Не рекомендується постійно залишати панель на відкритому HTTP-порті 13378. Для віддаленого доступу краще підключити домен, HTTPS-сертифікат і reverse proxy на базі Nginx, Caddy або Traefik.

Audiobookshelf використовує WebSocket, тому в проксі потрібно ввімкнути його підтримку. Після налаштування HTTPS порт контейнера можна прив'язати лише до локального інтерфейсу:

ports:
  - "127.0.0.1:13378:80"

Використовуйте унікальні паролі, створіть окремий обліковий запис для кожного слухача, оновлюйте контейнер і не надавайте адміністративні права без потреби.

Що потрібно знати про резервні копії

Вбудовані резервні копії Audiobookshelf зберігають базу даних і частину метаданих, зокрема обкладинки з каталогу metadata. Аудіокниги, подкасти й обкладинки поруч із медіафайлами до цієї копії не входять.

Тому надійна стратегія має дві частини:

  1. автоматична вбудована резервна копія бази даних і метаданих;
  2. окрема копія каталогів audiobooks і podcasts на іншому диску або у віддаленому сховищі.

Каталог /config містить базу SQLite. Розробники рекомендують зберігати його на локальному диску того самого сервера, а не монтувати через мережу: мережеве сховище може знизити продуктивність і спричинити пошкодження бази.

Audiobookshelf на VPS від tropic.host

Для особистої бібліотеки максимальна обчислювальна потужність менш важлива за постійну доступність, достатній дисковий простір і стабільне з'єднання. На VPS Audiobookshelf працює цілодобово й доступний із телефона, комп'ютера або планшета незалежно від стану домашньої мережі.

Для невеликої колекції можна почати з базового сервера tropic.host, встановити Docker, підключити домен і HTTPS, а потім збільшувати ресурси разом із бібліотекою. Під час вибору тарифу спочатку оцініть розмір аудіофайлів і залиште місце для нових книжок та подкастів.

Обмеження, про які варто знати заздалегідь

Audiobookshelf не надає каталог книжок і не знімає DRM-захист. Він працює з файлами, які користувачі додають самостійно та мають право зберігати.

Мобільні застосунки активно розвиваються й офіційно мають статус beta, тому вебінтерфейс або PWA залишаються корисним запасним варіантом. Підтримка електронних книжок базова, а охайний імпорт великої колекції потребує дотримання структури папок і періодичного ручного виправлення метаданих.

Для аудіокниг сервіс надає все, чого бракує звичайній хмарній папці: розділи, серії, відстеження прогресу, офлайн-завантаження, профілі та підтримку подкастів.

Висновок

Audiobookshelf перетворює аудіофайли на персональну медіабібліотеку для кількох пристроїв і користувачів. Встановлення через Docker Compose просте, але надійна робота потребує охайної структури папок, HTTPS і окремих резервних копій медіафайлів.

Поширені запитання

Audiobookshelf безкоштовний?

Так. Сервер і офіційні клієнти поширюються як програмне забезпечення з відкритим кодом. Платити потрібно лише за обладнання, VPS, домен або додаткове сховище, якщо ви ними користуєтеся.

Чи надає Audiobookshelf безкоштовні аудіокниги?

Ні. Це сервер і програвач для вашої колекції. Аудіофайли потрібно отримувати законно та самостійно додавати до бібліотеки.

Чи можна слухати книжки без інтернету?

Так. Мобільний застосунок дає змогу заздалегідь завантажити книжку на пристрій. Після завантаження підключення до сервера для прослуховування не потрібне.

Скільки RAM потрібно Audiobookshelf?

Для невеликої бібліотеки та одного-двох користувачів 1 GB RAM — розумна відправна точка. Для кількох слухачів, масштабного сканування або обробки файлів краще вибрати 2–4 GB.

Чи обов'язково встановлювати Audiobookshelf на VPS?

Ні. Він може працювати на домашньому сервері, NAS або сумісному комп'ютері. VPS зручніший, коли потрібен цілодобовий доступ із різних мереж без налаштування домашнього маршрутизатора та залежності від домашнього з'єднання.