Zum Inhalt

Audiobookshelf mit Docker selbst hosten

Veröffentlicht am 1. August 2026 · Geschätzte Lesezeit: 5 Minuten

Mit Audiobookshelf verwaltest du eigene Hörbücher und Podcasts in einer persönlichen Mediathek. Der Server liest deine Audiodateien ein, merkt sich den Hörfortschritt je Benutzer und stellt die Sammlung im Browser sowie in passenden Apps bereit. Für Installation und erste Bibliothek solltest du etwa 20 bis 30 Minuten einplanen.

Die Angaben wurden am 1. August 2026 mit der offiziellen Docker-Dokumentation von Audiobookshelf geprüft. Einen zusätzlichen deutschsprachigen Überblick bietet das Video Audiobookshelf – unabhängig Hörbücher verwalten.

Voraussetzungen

  • Ein Linux-Server mit installiertem Docker und Docker Compose
  • Zugriff auf das Terminal des Servers
  • Ein Ordner mit eigenen Hörbuchdateien
  • Eine feste IP-Adresse oder ein lokaler DNS-Name für den Server

1. Benutzer-ID und Hörbuchordner prüfen

Ermittle im Terminal des Docker-Servers die Benutzer-ID:

id -u

Ermittle danach die Gruppen-ID:

id -g

Notiere beide Zahlen. Prüfe anschließend deinen Hörbuchordner und ersetze <hoerbuch-ordner> durch dessen vollständigen Pfad.

ls -ld <hoerbuch-ordner>

Eine übersichtliche Ordnerstruktur ist <Autor>/<Buch>/<Audiodateien>. Der angemeldete Linux-Benutzer benötigt mindestens Leserechte auf alle enthaltenen Ordner und Dateien.

2. Arbeitsordner anlegen

Erstelle lokale Ordner für Datenbank und Metadaten:

mkdir -p ~/audiobookshelf/config ~/audiobookshelf/metadata

Wechsle in den Arbeitsordner:

cd ~/audiobookshelf

Die SQLite-Datenbank im Ordner config muss laut offizieller Dokumentation direkt auf dem Docker-Server liegen. Lege diesen Ordner nicht auf einer Netzwerkfreigabe ab.

3. Compose-Datei erstellen

Öffne eine neue Compose-Datei:

nano compose.yaml

Füge die folgende Konfiguration ein. Ersetze <benutzer-id> und <gruppen-id> durch die zuvor notierten Zahlen. Ersetze <hoerbuch-ordner> durch den vollständigen Pfad deiner Sammlung.

services:
  audiobookshelf:
    image: ghcr.io/advplyr/audiobookshelf:latest
    container_name: audiobookshelf
    user: "<benutzer-id>:<gruppen-id>"
    restart: unless-stopped
    ports:
      - "13378:80"
    environment:
      TZ: Europe/Berlin
    volumes:
      - ./config:/config
      - ./metadata:/metadata
      - <hoerbuch-ordner>:/audiobooks:ro

Speichere mit Strg+O, bestätige mit der Eingabetaste und beende Nano mit Strg+X.

Der Hörbuchordner ist mit :ro nur lesbar eingebunden. Audiobookshelf kann dadurch deine Originaldateien nicht verändern. Einstellungen und Vorschaubilder bleiben in den beiden lokalen Datenordnern erhalten.

4. Container starten

Starte Audiobookshelf im Hintergrund:

docker compose up -d

Prüfe anschließend den Zustand:

docker compose ps

In der Spalte STATUS sollte Up stehen. Bei einem Fehler helfen die letzten Protokollzeilen:

docker compose logs --tail=100 audiobookshelf

5. Erstes Administratorkonto erstellen

Öffne auf einem Gerät im selben Netzwerk folgende Adresse:

http://<server-ip>:13378

Ersetze <server-ip> durch die IP-Adresse deines Docker-Servers, zum Beispiel 192.168.178.50.

Beim ersten Aufruf legst du das Root-Konto von Audiobookshelf an. Es gibt kein voreingestelltes Kennwort. Verwende ein starkes, einzigartiges Passwort und speichere es in einem vertrauenswürdigen Passwortmanager.

Danger

Das zuerst angelegte Root-Konto besitzt vollständige Verwaltungsrechte. Teile dieses Konto nicht mit anderen Personen, sondern erstelle später für jede Person ein eigenes Benutzerkonto.

6. Hörbuchbibliothek anlegen

Öffne in Audiobookshelf die Bibliothekseinstellungen und erstelle eine neue Buchbibliothek. Verwende einen Namen wie Hörbücher und wähle als Ordner diesen Containerpfad:

/audiobooks

Starte den Scan. Audiobookshelf ordnet die Dateien anhand von Ordnernamen und Metadaten zu. Ein Hörbuch mit mehreren Audiodateien sollte in einem eigenen Unterordner liegen.

Tip

Prüfe zunächst ein oder zwei Hörbücher, bevor du eine sehr große Sammlung einliest. So kannst du Ordnernamen und Metadaten ohne langen erneuten Scan korrigieren.

7. Benutzerzugriff absichern

Lege unter den Servereinstellungen für weitere Personen jeweils ein eigenes Benutzerkonto an. Vergib nur die benötigten Bibliotheken und Rechte. Verwende das Root-Konto ausschließlich für Verwaltungsaufgaben.

Leite Port 13378 nicht direkt im Router ins Internet weiter. Nutze für den Fernzugriff ein VPN oder einen abgesicherten Reverse Proxy mit HTTPS.

Warning

Hörfortschritt und persönliche Bibliotheksdaten sind benutzerbezogen. Gemeinsame Konten werden von Audiobookshelf nicht als normaler Anwendungsfall unterstützt und können zu widersprüchlichen Fortschrittsständen führen.

8. Wiedergabe testen

Öffne ein eingelesenes Hörbuch und starte die Wiedergabe. Merke dir die aktuelle Position, schließe die Seite und öffne das Hörbuch erneut.

Falls die Bibliothek leer bleibt, prüfe im Container, ob der Ordner sichtbar ist:

docker compose exec audiobookshelf ls -la /audiobooks

Der Befehl wird im Ordner ~/audiobookshelf ausgeführt. Werden keine Dateien angezeigt, kontrolliere den Host-Pfad und die Leserechte.

9. Backup und Rückweg vorbereiten

Stoppe Audiobookshelf vor der Sicherung, damit die SQLite-Datenbank nicht verändert wird:

cd ~/audiobookshelf
docker compose down

Sichere Compose-Datei, Datenbank und Metadaten in einem Archiv:

tar -czf "$HOME/audiobookshelf-backup-$(date +%F).tar.gz" -C "$HOME/audiobookshelf" compose.yaml config metadata

Starte den Dienst danach wieder:

docker compose up -d

Die eigentlichen Hörbuchdateien sind nicht in diesem Archiv enthalten und benötigen ein eigenes Backup. Für den Rückweg stoppst du den Container, stellst die gesicherten Dateien wieder her und startest Audiobookshelf erneut.

10. Audiobookshelf aktualisieren

Erstelle zuerst ein Backup. Lade danach das aktuelle stabile Container-Abbild:

cd ~/audiobookshelf
docker compose pull

Ersetze den Container anschließend mit den vorhandenen Daten:

docker compose down
docker compose up -d

Prüfe nach dem Update Anmeldung, Bibliothek und gespeicherten Hörfortschritt.

11. Typische Fehler beheben

Wenn die Weboberfläche nicht erreichbar ist, prüfe, ob Port 13378 bereits belegt ist:

sudo ss -ltnp | grep ':13378'

Bei einem Konflikt änderst du in compose.yaml nur die linke Zahl, zum Beispiel auf "13379:80". Die neue Adresse lautet dann http://<server-ip>:13379.

Bei Schreibfehlern in config oder metadata kontrollierst du die Besitzer der Ordner:

ls -ld ~/audiobookshelf/config ~/audiobookshelf/metadata

Die Besitzer-IDs müssen zu <benutzer-id> und <gruppen-id> aus der Compose-Datei passen.

Fertig

Audiobookshelf läuft jetzt als persönliche Hörbuchzentrale mit getrennten Daten- und Medienordnern. Die Einrichtung ist erfolgreich, wenn ein Hörbuch abgespielt wird und die zuletzt gehörte Position nach dem erneuten Öffnen erhalten bleibt.