Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Installation

The easiest way to run BookBoss is with Docker Compose. Pre-built compose files are provided in the deploy/ directory for each supported database backend.

Quick Start

  1. Create directories for your library and bookdrop:

    mkdir -p Library/Books Library/Bookdrop
    
  2. Download the compose file for your preferred database:

    BackendFileNotes
    PostgreSQL (recommended)docker-compose-postgres.yamlBest performance, recommended for production
    MySQL / MariaDBdocker-compose-mysql.yamlAlternative relational backend
    SQLitedocker-compose-sqlite.yamlSimplest setup, single container, no separate database
    # Example: PostgreSQL
    curl -O https://raw.githubusercontent.com/szinn/BookBoss/main/deploy/docker-compose-postgres.yaml
    
  3. Edit the compose file and change BOOKBOSS__ENCRYPTION_SECRET to a random string. Update BOOKBOSS__FRONTEND__BASE_URL if you are accessing BookBoss from a different hostname or behind a reverse proxy.

  4. Start BookBoss:

    docker compose -f docker-compose-postgres.yaml up -d
    
  5. Open http://localhost:8080 and create your admin account.

What’s Next

Requirements

BookBoss needs:

  • A supported database — SQLite, PostgreSQL, MySQL, or MariaDB
  • A filesystem directory for the book library (BOOKBOSS__LIBRARY__LIBRARY_PATH)
  • A filesystem directory for the bookdrop inbox (BOOKBOSS__IMPORT__BOOKDROP_PATH)

Build from Source

See Development Setup for instructions on building and running BookBoss from source.