Skip to content

How to setup Audiobookshelf (with Docker & Caddy)

Ready to use

Description

Audiobookshelf is an open-source self-hosted media server for your audiobooks and podcasts.

Create a DNS record

Go to cPanel and add a new record (e.g. audiobookshelf.akdscloud.eu).

Caddy

audiobookshelf.akdscloud.eu:443 {
    header Strict-Transport-Security max-age=31536000;
    reverse_proxy localhost:13378
}

Folders

Create the folder structure.

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

Docker

  1. Add the audiobookshelf section to your docker-compose.yml file:

      audiobookshelf:
        image: ghcr.io/advplyr/audiobookshelf:latest
        ports:
          - 13378:80
        volumes:
          - ./audiobookshelf/audiobooks:/audiobooks
          - ./audiobookshelf/podcasts:/podcasts
          - ./audiobookshelf/config:/config
          - ./audiobookshelf/metadata:/metadata
        environment:
          - TZ=Europe/Bucharest
        restart: unless-stopped
        depends_on:
          - caddy
    
  2. Download and start the audiobookshelf docker image:

    docker compose up -d audiobookshelf
    
  3. Restart Caddy to get an SSL certificate (details here)

Try it out

See if you can access the audiobookshelf web interface.

Troubleshooting

If it doesn't work, see the troubleshooting guide.

Configuration

Admin password

Set a strong admin password.

Official site

Documentation page