Files
serverAppConfigs/docs/Dankserver/Calibre.md
T
Frank e8fd009419 docs: fact-check sweep, Jellyfin, *arr stack, and ROM scraping guides
Fact-check results:
- RomM 5.2.0: MariaDB+Redis now required (was SQLite), auth var renamed, 11 metadata providers
- Copyparty v1.20.19: 3 CVEs fixed, WOPI integration, docker editions documented
- Calibre-Web 0.6.27-ls397: version pinning, kepubify auto-config, CVE fixes
- Calibre 9.9.0: content server security fix noted

New documentation:
- docs/Dankserver/Jellyfin.md — full media server guide (compose, Caddy, GPU, metadata, clients)
- docs/Dankserver/ARR-Stack.md — automated download stack overview
- docs/Dankserver/RomM-Scraping.md — metadata providers, naming, cover art, emulator integration
- docs/Dankserver/sonarr.md, radarr.md, lidarr.md, readarr.md, prowlarr.md, qbittorrent.md
- docs/Dankserver/mariadb.md, redis.md — supporting services for RomM

Infrastructure updates:
- dankserver/compose.yaml: added mariadb, redis, jellyfin, *arr services
- dankserver/Caddyfile: added hostnames for all new services
- dankserver/.env.example: added all new environment variables
- docs/index.md: linked all new documentation pages

Tested: 52/52 tests pass.
2026-08-20 23:40:07 -07:00

2.6 KiB

Calibre

Calibre is the e-book library manager that backs Calibre-Web. It manages metadata, formats, and conversions for the library that Calibre-Web serves.

Host: Dankserver (library directory on host) — Docs: https://calibre-ebook.com

Role in this Stack

Calibre itself is a desktop/GUI application, not a container service. This stack runs Calibre-Web in a container and points it at an existing Calibre library directory on the Dankserver host.

Calibre is used to:

  • Import books into the library (drag-and-drop or CLI calibredb)
  • Edit metadata (author, title, series, tags, cover art)
  • Convert between formats (EPUB → MOBI, MOBI → EPUB, etc.)
  • Manage collections and reading lists

The actual library files (.epub, .mobi, .pdf) and the Calibre database (.db file) live on the host filesystem. Calibre-Web reads and writes them through the mounted volume.

Current Version

Calibre 9.9.0 is the latest stable release. Major features include:

  • Bookshelf view
  • Opt-in AI features
  • Content server security fix (CVE-2025-7404 equivalent): a bug since v6.16.0 allows any user with server access to read non-Calibre files on the host. Upgrade to 9.9.0+ if serving content to untrusted users.

Library Directory

Purpose Host path (convention)
Calibre library /opt/calibre-web/books (bind-mounted to /books in the Calibre-Web container)

What the Container Needs

  • Read/write access to the library directory. Calibre-Web edits metadata through the database file.
  • Ownership matching PUID=1000 / PGID=1000 (the dank user on Dankserver).

Optional: Calibre Content Server

Calibre includes a built-in HTTP content server (calibre-server) that can serve the library via OPDS feeds and a mobile-friendly web interface. This enables:

  • OPDS feeds for mobile reading apps (FBReader, Moon+ Reader)
  • Mobile-optimized UI via the --mobile flag
  • Direct Kindle push

To run as a container:

services:
  calibre-server:
    image: lscr.io/linuxserver/calibre:latest
    container_name: calibre-server
    restart: unless-stopped
    environment:
      PUID: "1000"
      PGID: "1000"
      TZ: Etc/UTC
    command: calibre-server --daemonize --port 8080 --enable-auth --url-prefix /calibre /books
    volumes:
      - /opt/calibre-web/books:/books
    ports:
      - "8084:8080"

Note: The content server runs headless in --daemonize mode. It requires the full Calibre package, not a minimal server.

See Also