Files
EZ-Homelab/docs/service-docs/calibre-web.md
kelin aa3f927b2c Reorganize docker-compose stacks for better service grouping
Stack changes:
- Renamed media-extended.yml → media-management.yml (better clarity)
- Moved Plex from media → alternatives (Jellyfin is primary)
- Moved code-server from utilities → infrastructure
- Moved Sonarr, Radarr, Prowlarr from media → media-management
- Moved Calibre-web from media-management → media

New stack organization:
- media.yml (3): Jellyfin, Calibre-web, qBittorrent
- media-management.yml (13): All *arr apps, transcoders
- alternatives.yml (6): Plex, Portainer, Authentik
- infrastructure.yml (7): Added code-server
- utilities.yml (6): Removed code-server

Documentation updated:
- README.md: Updated stack descriptions
- services-overview.md: Updated service counts and locations
- All service docs: Updated file paths media-extended → media-management
2026-01-14 01:32:20 -05:00

218 lines
5.3 KiB
Markdown

# Calibre-Web - Ebook Library Manager
## Table of Contents
- [Overview](#overview)
- [What is Calibre-Web?](#what-is-calibre-web)
- [Why Use Calibre-Web?](#why-use-calibre-web)
- [Configuration in AI-Homelab](#configuration-in-ai-homelab)
- [Official Resources](#official-resources)
- [Docker Configuration](#docker-configuration)
- [Initial Setup](#initial-setup)
- [Troubleshooting](#troubleshooting)
## Overview
**Category:** Ebook Management
**Docker Image:** [linuxserver/calibre-web](https://hub.docker.com/r/linuxserver/calibre-web)
**Default Stack:** `media-extended.yml`
**Web UI:** `https://calibre-web.${DOMAIN}` or `http://SERVER_IP:8083`
**Default Login:** admin/admin123
**Ports:** 8083
## What is Calibre-Web?
Calibre-Web is a web-based ebook reader and library manager. It provides a clean interface to browse, read, and download ebooks from your Calibre library. Works perfectly with Readarr for automated ebook management.
### Key Features
- **Web Reader:** Read ebooks in browser
- **Format Support:** EPUB, PDF, MOBI, AZW3, CBR, CBZ
- **User Management:** Multiple users with permissions
- **Send to Kindle:** Email books to Kindle
- **OPDS Feed:** E-reader app integration
- **Metadata Editing:** Edit book information
- **Custom Columns:** Organize your way
- **Shelves:** Create reading lists
- **Download:** Multiple formats available
## Why Use Calibre-Web?
1. **Web Access:** Read anywhere with browser
2. **No Calibre Desktop:** Standalone web interface
3. **Multi-User:** Family members can have accounts
4. **Kindle Integration:** Send books to Kindle
5. **E-Reader Support:** OPDS for apps
6. **Readarr Compatible:** Works with automated downloads
7. **Free & Open Source:** No cost
## Configuration in AI-Homelab
### Directory Structure
```
/opt/stacks/media-management/calibre-web/config/ # Config
/mnt/media/books/ # Calibre library
```
### Environment Variables
```bash
PUID=1000
PGID=1000
TZ=America/New_York
DOCKER_MODS=linuxserver/mods:universal-calibre # Optional: Convert books
```
## Official Resources
- **GitHub:** https://github.com/janeczku/calibre-web
- **Documentation:** https://github.com/janeczku/calibre-web/wiki
## Docker Configuration
```yaml
calibre-web:
image: linuxserver/calibre-web:latest
container_name: calibre-web
restart: unless-stopped
networks:
- traefik-network
ports:
- "8083:8083"
environment:
- PUID=1000
- PGID=1000
- TZ=America/New_York
- DOCKER_MODS=linuxserver/mods:universal-calibre
volumes:
- /opt/stacks/media-management/calibre-web/config:/config
- /mnt/media/books:/books
labels:
- "traefik.enable=true"
- "traefik.http.routers.calibre-web.rule=Host(`calibre-web.${DOMAIN}`)"
- "traefik.http.routers.calibre-web.entrypoints=websecure"
- "traefik.http.routers.calibre-web.tls.certresolver=letsencrypt"
- "traefik.http.services.calibre-web.loadbalancer.server.port=8083"
```
## Initial Setup
1. **Start Container:**
```bash
docker compose up -d calibre-web
```
2. **Access UI:** `http://SERVER_IP:8083`
3. **First Login:**
- Username: `admin`
- Password: `admin123`
- **Change immediately!**
4. **Database Location:**
- Set to: `/books/metadata.db`
- This is your Calibre library database
5. **Configure Settings:**
- Admin → Edit Basic Configuration
- Set server name, enable features
- Configure email for Kindle sending
### Key Settings
**Basic Configuration:**
- Server Name: Your server name
- Enable uploads: ✓ (if wanted)
- Enable public registration: ✗ (keep private)
**Feature Configuration:**
- Enable uploading: Based on needs
- Enable book conversion: ✓
- Enable Goodreads integration: ✓ (optional)
**UI Configuration:**
- Theme: Dark/Light
- Books per page: 20
- Random books: 4
## Troubleshooting
### Can't Find Database
```bash
# Check Calibre library structure
ls -la /mnt/media/books/
# Should contain metadata.db
# If no Calibre library exists:
# Install Calibre desktop app
# Create library pointing to /mnt/media/books/
# Or let Readarr create it
# Check permissions
sudo chown -R 1000:1000 /mnt/media/books/
```
### Books Not Showing
```bash
# Check database path
# Admin → Basic Configuration → Database location
# Rescan library
# Admin → Reconnect to Calibre DB
# Check logs
docker logs calibre-web | tail -20
```
### Send to Kindle Not Working
```bash
# Configure email settings
# Admin → Edit Basic Configuration → E-mail Server Settings
# Gmail example:
# SMTP: smtp.gmail.com
# Port: 587
# Encryption: STARTTLS
# Username: your@gmail.com
# Password: App-specific password
# Add Kindle email
# User → Edit → Kindle E-mail
```
## Summary
Calibre-Web is the ebook reader offering:
- Web-based reading
- Format conversion
- Multi-user support
- Kindle integration
- OPDS feeds
- Readarr compatible
- Free and open-source
**Perfect for:**
- Ebook collections
- Web-based reading
- Family sharing
- Kindle users
- Readarr integration
**Key Points:**
- Requires Calibre library (metadata.db)
- Works with Readarr
- Change default password!
- OPDS for e-reader apps
- Send to Kindle via email
**Remember:**
- Point to existing Calibre library
- Or create new library with Calibre desktop
- Readarr can populate library
- Multi-user support available
- Supports most ebook formats
Calibre-Web provides beautiful web access to your ebook library!