selfhostedworld.com logoselfhostedworld.com

Try describing what you need:

Grimmory logo

Grimmory

★ 4.5k
GNU Affero General Public License v3.0Open Source — No Paywall2 Containers — 2 containers — light hosting footprintDocker · Compose · Helm +1Needs MariaDB10+ active committers (12mo)

About

Grimmory is a self-hosted digital library aimed at readers who want to organize and consume books, comics, and audiobooks from their own infrastructure. It provides a browser-based interface for...

Community Ratings

No ratings yet

Features

  • Smart shelves
  • Metadata lookup
  • Built-in browser reader
  • Device sync
  • Multi-user accounts
  • BookDrop auto-import
  • One-click sharing
  • API docs/OpenAPI
  • Network storage mode
  • Library import review

Details

Last Updated
Oct 16, 2026
Created
Mar 12, 2026
Install Methods
dockerdocker-composehelmsource
Requirements
DockerDocker ComposeMariaDB
Authentication
localoidc-sso
API
REST
Backup & Export
file-backupapi-export
Runtime / Stack
Docker
Privacy & Independence
Cloud: OptionalOffline Capable
User Model
Multi-User
Deployment

Deployment: Docker Compose ✓2 Containers — light hosting footprintRuns as 2 containers

Run Grimmory with Docker Compose

Compose file from the Grimmory project repository.

2 services · database: mariadb · infra: mariadb

no resource limits declared

needs persistent storage (4 volumes)

deploy/compose/docker-compose.yml · @ bb0e6cc · scanned Oct 17, 2026

services:
  # Upgrade path from Booklore:
  # Keep your existing service name, container_name, database names/users, ports,
  # and mounted volumes. Replace only the image line(s) with Grimmory tags.
  grimmory:
    # Stable release example:
    image: ghcr.io/grimmory-tools/grimmory:latest
    # The suggested deployment approach is to use a specific version rather than `latest`
    # so upgrading is more straightforward and convenient.  In those cases, you can
    # use the tagged version, such as `v3.2.4` rather than `latest`.
    container_name: grimmory
    environment:
      - USER_ID=1000
      - GROUP_ID=1000
      - TZ=Etc/UTC
      - DATABASE_URL=jdbc:mariadb://mariadb:3306/grimmory
      - DATABASE_USERNAME=grimmory
      - DATABASE_PASSWORD=your_secure_password
      - SWAGGER_ENABLED=false
      - FORCE_DISABLE_OIDC=false
      # ALLOWED_ORIGINS=
      # Override JVM memory defaults (the image ships sensible defaults for ~512 MB heap).
      # Uncomment and adjust if you want a tighter or looser cap:
      # - JDK_JAVA_OPTIONS=-Xmx256m
      # Heap dumps are disabled by default. Enable them only when debugging an OOM:
      # The JVM creates a PID-specific .hprof file in /app/data.
      # - JDK_JAVA_OPTIONS=-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/app/data
    depends_on:
      mariadb:
        condition: service_healthy
    ports:
      - "6060:6060"
    volumes:
      - ./data:/app/data
      - ./books:/books
      - ./bookdrop:/bookdrop
    # Uncomment the block below if you need to override the defaults:
    #healthcheck:
    #  test: wget -q --spider http://localhost:6060/api/v1/healthcheck
    #  interval: 60s
    #  retries: 5
    #  start_period: 60s
    #  timeout: 10s
    #
    # Uncomment the block below if you want to disable healthchecks:
    #healthcheck:
    #  disable: true
    restart: unless-stopped

  mariadb:
    image: lscr.io/linuxserver/mariadb:11.4.8
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - MYSQL_ROOT_PASSWORD=super_secure_password
      - MYSQL_DATABASE=grimmory
      - MYSQL_USER=grimmory
      - MYSQL_PASSWORD=your_secure_password
    volumes:
      - ./config:/config
    restart: unless-stopped
    healthcheck:
      test: [ "CMD", "mariadb-admin", "ping", "-h", "localhost" ]
      interval: 5s
      timeout: 5s
      retries: 10

This file may be out of date. Check the Grimmory documentation for current setup steps.

Track your self-hosted stack

Bookmark software to try, rate tools you've used, and keep your collection in one place.

Metadata extracted from README on Oct 17, 2026

Related Software

Audiobookshelf logo

Audiobookshelf

14.7k
Audiobookshelf is a self-hosted audiobook and podcast server.
Audio StreamingE-Book ManagementCopyleft License+2
Details
Calibre Web logo

Calibre Web

18.4k
A web app for browsing, reading, downloading, and managing eBooks from a Calibre database.
E-Book ManagementCopyleft LicenseMedia Management+2
Details
Calibre logo

Calibre

26.2k
calibre is a cross-platform e-book manager that can view, convert, edit, catalog, and fetch metadata for e-books.
E-Book ManagementCopyleft LicenseMedia Management
Details
Calibre Web Automated logo

Calibre Web Automated

6.4k
Calibre-Web Automated is a self-hosted digital library solution that combines Calibre-Web’s web interface with Calibre-like automation and management features.
E-Book ManagementCopyleft LicenseLibrary Management Systems+3
Details
Komga logo

Komga

6.8k
Komga is a media server for comics, manga, BDs, magazines, and eBooks.
E-Book ManagementPermissive LicenseMedia Management+1
Details
Stump logo

Stump

2.8k
Stump is a free and open source comics, manga, and digital book server with OPDS support.
E-Book ManagementMedia ManagementMultimedia Streaming+2
Details
Kapowarr logo

Kapowarr

1.1k
Kapowarr is a comic book library manager for organizing, downloading, renaming, moving, and converting comic issues and volumes.
E-Book ManagementCopyleft LicenseMedia Management+2
Single Container
Details
Kavita logo

Kavita

11.9k
Kavita is a fast, feature-rich, cross-platform reading server for manga, comics, webtoons, and books.
E-Book ManagementCopyleft LicenseMedia Management+3
Open Core
Details
kiwix-serve logo

kiwix-serve

966
A collection of command-line tools for managing, searching, and serving ZIM files.
E-Book ManagementCopyleft LicenseSelf Hosting Solutions+3
Details
Typemill logo

Typemill

619
Typemill is an open-source flat-file CMS for building websites and eBooks from markdown files.
CMS PlatformsKnowledge ManagementDocument Management+4
Details
BookLore logo

BookLore

1.3k
BookLore is a self-hosted app for managing a personal book collection, with reading, annotation, syncing, and sharing features.
E-Book ManagementSelf Hosting SolutionsLibrary Management Systems+1
Details
BookLogr logo

BookLogr

633
A self-hosted web app for tracking a personal book library.
E-Book ManagementPermissive LicenseLibrary Management Systems+3
2 ContainersFully FOSS
Details