LibrePortal
Sponsor
Install

Audiobookshelf

Audiobook & Podcast Server

Audiobookshelf is your own audiobook and podcast server. Put your books in one folder, listen in the browser or in its phone app, and pick up exactly where you left off on whichever device is to hand.

On this page
  1. At a glance
  2. What it's good for
  3. Signing in
  4. Getting your books in
  5. Adding people
  6. Listening on your phone
  7. Good to know
  8. Addresses and ports
  9. Settings
  10. In its config file
  11. Tools
  12. Works with
  13. Privacy and security
  14. What leaves this server
  15. What LibrePortal turns off
  16. Sources
  17. Under the hood

Good to know before you install

Audiobookshelf asks GitHub for new versions whenever someone opens it, which tells GitHub that visitor's address and nothing else; it has no setting to turn that off.

At a glance#

What it is
Audiobook & Podcast Server Media
Where it opens
Web Interface On its own port at http://your-server:port, or audiobooks.your-domain once you have a domain
Updates
Automatic A backup is taken first, and it rolls back if the update fails
Backups
Included Part of the daily backup when that's switched on
Copies
One per server

What it's good for#

If you've got audiobooks spread across a laptop, an old phone and a folder of MP3s from a library CD, Audiobookshelf brings them together. It reads each book's files as one book, with chapters, cover and author, and remembers how far you got. Start a chapter in the kitchen on your laptop, carry on in the car on your phone, and it knows where you stopped.

It also subscribes to podcasts and downloads new episodes to your own server, so they're there even if a show disappears from the internet. Each person in the house gets their own account, their own progress and their own listening history.

Audiobookshelf, Kavita or Jellyfin?

Kavita is for books you read: ebooks, comics and manga. Jellyfin can play audio files, but it treats them as music, with no idea of chapters or where you stopped in a ten-hour book. For listening to books and podcasts, Audiobookshelf is the one built for the job.

Signing in#

A new Audiobookshelf asks the first person who opens it to create the main account, which would be a problem on a server anyone can reach. So LibrePortal makes that account itself, as soon as the server answers, and keeps Audiobookshelf reachable from the server only until it has checked the new login works. Nobody gets a chance to reach the setup page first.

The account is called admin, and it's Audiobookshelf's root account: the one that runs the server and can never be deleted. Its password is in the Login Details shown when the install finishes. Press Welcome on the app's page to see it again.

If the install couldn't make the account

If something went wrong (Audiobookshelf didn't answer within three minutes, say), the install says so and leaves the app reachable from the server only, so it can't be claimed by someone else. The simplest fix is to uninstall it and install it again. Only restart it to open it up once you know the admin account exists.

Getting your books in#

LibrePortal also creates two libraries for you on a fresh install, so the first page isn't empty: Audiobooks, on the audiobooks folder, and Podcasts, on the podcasts folder. Both sit in Audiobookshelf's app folder, normally /libreportal-containers/audiobookshelf/.

There are two ways to fill the Audiobooks library:

  • Copy the files onto the server into the audiobooks folder. Audiobookshelf watches its library folders and picks up new books by itself; if one doesn't appear, scan the library. This is the easy way for a big collection.
  • Upload them in the browser. Audiobookshelf has its own upload page, which puts the files in the same folder for you.

Audiobookshelf works best when each book has its own folder, inside a folder for its author, like audiobooks/Terry Pratchett/Guards! Guards!/. Books in a series can go one level deeper, in a folder named after the series. Get this right at the start and the covers, authors and series fall into place by themselves.

For podcasts, search for a show inside the Podcasts library and subscribe. Audiobookshelf can check for new episodes on a schedule and download them into the podcasts folder.

Adding people#

Use the Tools tab, so you never need to open sign-ups.

  1. Open Audiobookshelf's page in LibrePortal and go to Tools.
  2. Run Create User Account with a username. The email is optional. Leave the password empty and one is made for you; tick Make admin only for someone who should manage the server with you.
  3. Send them the address and their password, and ask them to change it once they're in.

The other tools do what they say: Reset User Password, Set Admin Status, List Users and Delete User Account. The root account is always an admin, so it can't be demoted or deleted.

Change the admin password with the tool

The Tools tab works by signing in to Audiobookshelf as admin. If you change that password inside Audiobookshelf, the tools can no longer sign in. Use Reset User Password with the username admin instead: it changes the password in Audiobookshelf and in LibrePortal together, so the Login Details stay right too.

Listening on your phone#

Audiobookshelf has its own app for Android and iPhone, and it's the best way to listen: it keeps your place in sync with the server, and it can download books to the phone for a flight or a signal-free commute. In the app, enter your Audiobookshelf's address exactly as you open it in the browser, then your username and password.

This is why Audiobookshelf is marked Public in the catalogue, with no extra login in front of it: the phone app has to reach the same port the browser does, and an extra login would lock it out. If you only listen at home, you can make it private instead, and use the LibrePortal VPN when you're out. With a domain, it gets its own address at audiobooks.<your domain>, over HTTPS.

Good to know#

  • Updates are automatic. It installs on 2.37.0 and takes new builds of that version, and from this release it also climbs to newer versions on its own, one at a time, one step a day, with a backup taken and checked before each. You can also move it up yourself with Upgrade on its Updates tab, or hold it on its current version by setting it to Manual. See Updates. LibrePortal's tools were tested on 2.37.0, and the Tools tab says so if you're on a version they haven't been tested with.
  • Backups include your books. LibrePortal backs up the whole app folder, so a big audiobook collection makes for a big backup. Check your backup location has room for it. Audiobookshelf can also take its own backups of its database, which it keeps in its metadata folder.
  • One per server. The admin setup and the Tools reach Audiobookshelf by a fixed name, so it can't run as several copies side by side.

Addresses and ports#

Audiobookshelf has one port. LibrePortal picks a free port number for each when you install, so yours will differ from anyone else's. The Config tab's Network section shows them, and the app's Open button uses the right one. "Anyone" means it's reachable from wherever your server is reachable; you can make it private later.

What it isWho can reach itWith a domain
Web Interface Anyone audiobooks.your-domain

Settings#

In its config file#

Audiobookshelf's own settings aren't on the Config tab yet. They live in the app's config file, described here so you know they exist. How to change them.

SettingWhat it doesStarts as
Name
CFG_AUDIOBOOKSHELF_DISPLAY_NAME
What this app is called on your dashboards. Leave empty to use its usual name Empty
Show on the LibrePortal Dashboard
CFG_AUDIOBOOKSHELF_SHOW_ON_DASHBOARD
Whether this app gets a shortcut on the front page of the LibrePortal WebUI, separate from any Dashy dashboard
Choices: true, false
true

Tools#

Audiobookshelf's Tools tab has 5 buttons for jobs you'd otherwise need a terminal for. Each one runs as a task, so you can watch it on the Tasks page and read what it did. More about Tools.

Reset User PasswordTested on 2.37.0

Set a new password for an existing user. Leave blank to generate one.

Asks for: Username, New password (optional)
Create User AccountTested on 2.37.0

Add a new user. Tick "Make admin" for full rights.

Asks for: Username, Email (optional), Password (optional), Make admin
List UsersTested on 2.37.0

List every active user.

Delete User AccountCan't be undoneTested on 2.37.0

Remove a user and their playlists. The root account cannot be removed.

Asks for: Username
Set Admin StatusTested on 2.37.0

Promote or demote a user.

Asks for: Username, Make admin

Works with#

These are the other apps Audiobookshelf knows how to work with. Once it's installed, its page shows the same list with whether each one is connected. How this works.

  • Grafana: Shows dashboards for the apps that have one. works with every app
  • Prometheus: Collects metrics from the apps that can export them. works with every app
  • Uptime Kuma: Watches your apps and shows when one goes down. works with every app

Privacy and security#

Worth knowing Audiobookshelf sends nothing about you to its authors. Each web page you open asks GitHub whether a newer version exists, and book lookups happen only when you search for one.

What leaves this server#

  • Your browser asks GitHub for the latest version whenever the page is opened; there is no setting to stop it
  • Book and cover lookups (Audible, Google Books, Open Library and others) only when you search or match a book

What LibrePortal turns off#

Nothing needed switching off.

Licence: GPL-3.0 (package.json). Audited: 21 October 2026. See the privacy of every app and the Promise.

Sources#

Under the hood#

  • It runs this image: advplyr/audiobookshelf:2.37.0@sha256:6432d1dc58951b0280b29144ffc69834a8ae02786a2126f6b7c9bd453801c78b.
  • It can sit behind Authelia's sign-in once Authelia is installed.
  • Its own project and documentation: github.com/advplyr/audiobookshelf

Ports, settings, tools and connections on this page are read from LibrePortal v0.10.97's app catalogue each time the guide is built.

Next steps