Tropic Host

Audiobookshelf di VPS: perpustakaan audiobook dan podcast milik sendiri

5 min dibaca
Tropic
Audiobookshelf di VPS: perpustakaan audiobook dan podcast milik sendiri

Audiobookshelf: cara membuat server audiobook dan podcast sendiri

Mulai mendengarkan buku di komputer, lanjutkan dari posisi yang sama di ponsel, unduh sebelum bepergian, dan pertahankan progres setelah berpindah perangkat — semua itu tidak mengharuskan Anda bergantung pada layanan berbayar lainnya. Audiobookshelf mengubah koleksi audio sendiri menjadi perpustakaan online yang rapi dengan sampul, bab, aplikasi, dan profil terpisah untuk seluruh keluarga.

Audiobookshelf bukan toko dan bukan sumber buku gratis. Pengguna sendiri menambahkan file audio yang diperoleh secara legal dan tidak dilindungi DRM yang tidak kompatibel. Sebagai gantinya, buku, riwayat mendengarkan, dan pengaturan tetap berada di server sendiri.

Apa itu Audiobookshelf?

Audiobookshelf adalah server gratis, sumber terbuka, dan self-hosted untuk audiobook serta podcast. Layanan ini memindai folder berisi file media, mengatur perpustakaan berdasarkan penulis dan seri, mengambil metadata dan sampul, lalu memungkinkan Anda mendengarkan koleksi melalui browser atau aplikasi seluler.

Secara praktis, Audiobookshelf adalah layanan streaming pribadi yang katalognya Anda bangun sendiri. Server menyimpan perpustakaan dan progres mendengarkan, sedangkan ponsel, tablet, atau komputer berfungsi sebagai klien. Dengan demikian, Anda dapat menghentikan buku di satu perangkat dan melanjutkannya di perangkat lain dari posisi yang tersimpan.

Audiobookshelf dapat berjalan di rumah pada NAS atau mini PC. VPS lebih nyaman ketika Anda membutuhkan akses dari jaringan mana pun tanpa membiarkan komputer rumah menyala, mengatur penerusan port, atau bergantung pada koneksi internet rumah.

Apa saja yang dapat dilakukan Audiobookshelf?

Menyinkronkan progres antarperangkat

Setiap pengguna memiliki posisi, riwayat, dan bookmark tersimpan sendiri. Antarmuka web, Progressive Web App, serta klien seluler resmi untuk Android dan iOS tersedia. Anda dapat mengunduh buku ke ponsel terlebih dahulu dan mendengarkannya tanpa koneksi internet.

Membuat akun terpisah

Anda dapat membuat beberapa pengguna di satu server tanpa mencampur progres mendengarkan. Administrator mengendalikan akses ke perpustakaan dan izin, serta dapat membatasi konten berdasarkan tag jika diperlukan. Setiap pengguna memiliki daftar buku yang sedang dibaca, riwayat, dan bookmark sendiri.

Mengatur perpustakaan

Layanan mengambil judul, deskripsi, penulis, dan sampul dari sumber eksternal, mengelompokkan buku berdasarkan penulis dan seri, serta memungkinkan Anda memperbaiki bab dan melacak urutannya. Beberapa file MP3 dapat digabungkan menjadi satu file M4B, sedangkan sampul dan metadata dapat disematkan ke dalam file. Sebaiknya buat salinan perpustakaan sebelum mengubah file asli.

Mengunduh podcast secara otomatis

Podcast dapat ditambahkan berdasarkan judul, URL RSS, atau file OPML, setelah itu Anda dapat menjadwalkan pengunduhan episode baru secara otomatis. Layanan ini tidak melakukan streaming episode secara langsung: file terlebih dahulu disimpan di server. Dengan begitu, Anda dapat mengarsipkan episode yang mungkin menghilang, tetapi juga harus menyediakan ruang disk.

Menyimpan ebook bersama audiobook

Anda dapat menempatkan file EPUB, PDF, CBR, CBZ, AZW3, atau MOBI di folder buku agar audio dan teks terbuka dari entri perpustakaan yang sama. Reader bawaan bersifat dasar dan tidak menggantikan Calibre-Web atau Kavita.

Untuk siapa Audiobookshelf cocok?

Layanan ini sangat berguna dalam beberapa skenario:

  • Anda sudah memiliki koleksi audiobook dalam format MP3, M4B, M4A, atau format umum lainnya;
  • Anda mendengarkan di beberapa perangkat dan menginginkan sinkronisasi;
  • beberapa anggota keluarga menggunakan perpustakaan;
  • Anda ingin menyimpan arsip podcast sendiri;
  • Anda menginginkan kendali penuh atas file, akun pengguna, dan cadangan;
  • folder cloud biasa sudah tidak nyaman karena tidak memiliki sampul, bab, dan riwayat mendengarkan.

Jika Anda hanya mendengarkan satu atau dua buku di satu ponsel, server terpisah mungkin tidak diperlukan. Audiobookshelf menjadi paling berguna ketika koleksi bertambah atau membutuhkan akses jarak jauh terus-menerus.

Server seperti apa yang dibutuhkan Audiobookshelf?

Proyek ini tidak memiliki minimum resmi yang universal: beban bergantung pada ukuran perpustakaan, jumlah pengguna, pemindaian file, dan apakah transkode audio diperlukan. Untuk koleksi pribadi kecil, Anda dapat menggunakan konfigurasi awal berikut sebagai panduan:

SkenarioCPURAMDisk
1–2 pengguna, perpustakaan kecil1 vCPU1 GBmulai dari 30–40 GB
Penggunaan keluarga dan beberapa koneksi bersamaan2 vCPU2 GBmulai dari 60–100 GB
Perpustakaan besar, pemindaian dan pemrosesan file yang sering2–4 vCPU4 GBsesuai ukuran koleksi

Ini adalah panduan praktis, bukan minimum resmi. Ruang disk adalah sumber daya utama. Buku berdurasi sepuluh jam pada 64–128 Kbit/s memerlukan sekitar 0,3–0,6 GB, jadi seratus buku membutuhkan sekitar 30–60 GB, belum termasuk podcast dan cadangan. Masuk akal untuk memulai dengan VPS kecil yang dapat ditingkatkan nanti.

Cara memasang Audiobookshelf dengan Docker Compose

Docker adalah metode instalasi yang direkomendasikan pengembang. Langkah berikut mengasumsikan Docker dan plugin Compose sudah terpasang di Ubuntu atau Debian.

Buat direktori proyek dan folder data:

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

Buat file 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

Jalankan container:

docker compose up -d

Setelah startup, dasbor sementara tersedia di:

http://SERVER_IP:13378

Saat kunjungan pertama, buat akun administrator root, lalu tambahkan perpustakaan bertipe Books dan tentukan direktori /audiobooks. Untuk podcast, buat perpustakaan terpisah dengan jalur /podcasts.

Cara mengatur folder audiobook dengan benar

Di Audiobookshelf, satu buku biasanya sesuai dengan satu folder. Struktur yang paling jelas terlihat seperti ini:

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

Untuk buku tunggal, tingkat seri dapat dihilangkan. Satu file M4B juga dapat disimpan di folder bukunya sendiri.

Struktur sangat penting: jika beberapa buku dari penulis yang sama ditempatkan dalam satu folder bersama, pemindai dapat menggabungkannya menjadi satu entri perpustakaan. Sebaiknya atur file sebelum pemindaian penuh pertama. Memindahkan buku antarperpustakaan dianggap sebagai pembuatan item baru, sehingga metadata dan progresnya tidak ditransfer secara otomatis.

Cara mengekspos perpustakaan ke internet dengan aman

Membiarkan dasbor di port HTTP terbuka 13378 tidak disarankan untuk penggunaan permanen. Untuk akses jarak jauh, sebaiknya hubungkan domain, sertifikat HTTPS, dan reverse proxy berbasis Nginx, Caddy, atau Traefik.

Audiobookshelf menggunakan WebSocket, jadi dukungan untuknya harus diaktifkan pada proxy. Setelah mengonfigurasi HTTPS, port container dapat di-bind hanya ke antarmuka lokal:

ports:
  - "127.0.0.1:13378:80"

Gunakan kata sandi unik, buat akun terpisah untuk setiap pendengar, perbarui container, dan jangan memberikan izin administrator tanpa alasan.

Hal yang perlu diketahui tentang cadangan

Cadangan bawaan Audiobookshelf menyimpan database dan sebagian metadata, termasuk sampul dari direktori metadata. Audiobook, podcast, dan sampul yang disimpan bersama file media tidak termasuk dalam cadangan ini.

Karena itu, strategi cadangan yang andal memiliki dua bagian:

  1. cadangan bawaan otomatis untuk database dan metadata;
  2. salinan terpisah direktori audiobooks dan podcasts di disk lain atau penyimpanan jarak jauh.

Direktori /config berisi database SQLite. Pengembang menyarankan untuk menyimpannya di disk lokal server yang sama, bukan memasangnya melalui jaringan: penyimpanan jaringan dapat menurunkan performa dan menyebabkan kerusakan database.

Audiobookshelf di VPS dari tropic.host

Untuk perpustakaan pribadi, daya komputasi maksimum kurang penting dibandingkan ketersediaan terus-menerus, ruang disk yang cukup, dan koneksi stabil. Di VPS, Audiobookshelf berjalan sepanjang waktu dan tetap tersedia dari ponsel, komputer, atau tablet terlepas dari kondisi jaringan rumah.

Untuk koleksi kecil, Anda dapat memulai dengan server tropic.host dasar, memasang Docker, menghubungkan domain dan HTTPS, lalu meningkatkan sumber daya seiring perpustakaan bertambah. Saat memilih paket, perkirakan terlebih dahulu ukuran file audio dan sisakan ruang untuk buku serta podcast baru.

Keterbatasan yang perlu diketahui sejak awal

Audiobookshelf tidak menyediakan katalog buku dan tidak menghapus perlindungan DRM. Layanan ini bekerja dengan file yang ditambahkan sendiri oleh pengguna dan memang berhak mereka simpan.

Aplikasi seluler masih aktif dikembangkan dan secara resmi berstatus beta, sehingga antarmuka web atau PWA tetap menjadi cadangan yang berguna. Dukungan ebook bersifat dasar, dan mengimpor koleksi besar dengan rapi memerlukan kepatuhan pada struktur folder serta sesekali memperbaiki metadata secara manual.

Untuk audiobook, layanan ini menyediakan semua yang tidak dimiliki folder cloud biasa: bab, seri, pelacakan progres, unduhan offline, profil, dan dukungan podcast.

Kesimpulan

Audiobookshelf mengubah file audio menjadi perpustakaan media pribadi untuk banyak perangkat dan pengguna. Instalasi dengan Docker Compose cukup mudah, tetapi pengoperasian yang andal memerlukan struktur folder yang rapi, HTTPS, dan cadangan terpisah untuk file media.

FAQ

Apakah Audiobookshelf gratis?

Ya. Server dan klien resmi didistribusikan sebagai perangkat lunak sumber terbuka. Anda hanya perlu membayar perangkat keras, VPS, domain, atau penyimpanan tambahan jika menggunakannya.

Apakah Audiobookshelf menyediakan audiobook gratis?

Tidak. Audiobookshelf adalah server dan pemutar untuk koleksi Anda sendiri. Anda harus memperoleh file audio secara legal dan menambahkannya ke perpustakaan sendiri.

Bisakah saya mendengarkan buku tanpa koneksi internet?

Ya. Aplikasi seluler memungkinkan Anda mengunduh buku ke perangkat terlebih dahulu. Setelah diunduh, koneksi ke server tidak diperlukan untuk mendengarkan.

Berapa banyak RAM yang dibutuhkan Audiobookshelf?

Untuk perpustakaan kecil dan satu atau dua pengguna, RAM 1 GB merupakan titik awal yang wajar. Untuk beberapa pendengar, pemindaian ekstensif, atau pemrosesan file, sebaiknya pilih 2–4 GB.

Apakah Audiobookshelf harus dipasang di VPS?

Tidak. Audiobookshelf dapat berjalan di server rumah, NAS, atau komputer yang kompatibel. VPS lebih nyaman ketika Anda membutuhkan akses sepanjang waktu dari jaringan berbeda tanpa mengatur router rumah atau bergantung pada koneksi rumah.