audiobookshelf Docker & Self-Hosted Deployment

GitHub

Self-hosted audiobook and podcast server

12,696 stars JavaScript JavaScript 1 file ยท ~6,684 tokens #audiobook-manager#audiobooks#audiobookshelf#podcasts#self-hosted
RAW Compose
1. Pull Image (GHCR) docker pull ghcr.io/advplyr/audiobookshelf
2. Docker Run (1-Click Launch) docker run -d --name audiobookshelf -p 13378:13378 --restart always ghcr.io/advplyr/audiobookshelf:latest
3. Podman Run podman run -d --name audiobookshelf -p 13378:13378 --restart always ghcr.io/advplyr/audiobookshelf:latest
4. Skopeo Inspect (Zero-Pull Manifest) skopeo inspect docker://ghcr.io/advplyr/audiobookshelf:latest
5. ORAS Pull (OCI Artifact) oras pull ghcr.io/advplyr/audiobookshelf:latest
6. Compose Deployment docker compose up -d
docker-compose.yml
Download .yml
### EXAMPLE DOCKER COMPOSE ###
services:
  audiobookshelf:
    image: ghcr.io/advplyr/audiobookshelf:latest
    # ABS runs on port 13378 by default. If you want to change
    # the port, only change the external port, not the internal port
    ports:
      - 13378:80
    volumes:
      # These volumes are needed to keep your library persistent
      # and allow media to be accessed by the ABS server.
      # The path to the left of the colon is the path on your computer,
      # and the path to the right of the colon is where the data is
      # available to ABS in Docker.
      # You can change these media directories or add as many as you want
      - ./audiobooks:/audiobooks
      - ./podcasts:/podcasts
      # The metadata directory can be stored anywhere on your computer
      - ./metadata:/metadata
      # The config directory needs to be on the same physical machine
      # you are running ABS on
      - ./config:/config
    restart: unless-stopped
    # You can use the following user directive to run the ABS
    # docker container as a specific user. You will need to change
    # the UID and GID to the correct values for your user.
    # user: 1000:1000