---
title: Calibre-web Stack
description: Automated Calibre-web setup for NetGrimoire
published: true
date: 2026-04-30T02:56:22.348Z
tags: docker,swarm,Calibre-web,netgrimoire
editor: markdown
dateCreated: 2026-04-30T02:56:22.348Z

---

# Calibre-web

## Overview
This stack provides a fully automated setup for Calibre-web in NetGrimoire, utilizing Docker Swarm to manage the service. The main services used are calibre-web-automated and caddy.

---

## Architecture
| Service | Image | Port | Role |
|---------|-------|------|------|
- **calibre-web-automated:** crocodilestick/calibre-web-automated:latest | 8083 | Web UI |
- **caddy:** Caddy | - | Reverse Proxy |

- Exposed via: `books.netgrimoire.com` and `books.pncharris.com`
- Homepage group: PNHarris Apps

---

## Build & Configuration

### Prerequisites
The .env file must be sourced before running the deploy script.

### Volume Setup
```bash
mkdir -p /DockerVol/Calibre-web/Config
```

### Environment Variables
```bash
# generate: openssl rand -hex 32
PUID=1964
PGID=1964
TZ=America/Chicago
CWA_PORT_OVERRIDE=8083
```

### Deploy
```bash
cd services/swarm/stack/Calibre-web
set -a && source .env && set +a
docker stack config --compose-file Calibre-web-stack.yml > resolved.yml
docker stack deploy --compose-file resolved.yml Calibre-web
rm resolved.yml
docker stack services Calibre-web
```

### First Run
After the initial deployment, run `./deploy.sh` to apply any necessary configurations.

---

## User Guide

### Accessing Calibre-web
| Service | URL | Purpose |
|---------|-----|---------|
- **Calibre-web**: http://calibre-web:8083 |

### Primary Use Cases
This service is intended for automated use in NetGrimoire.

### NetGrimoire Integrations
This service connects to other services via the environment variables specified, including Uptime Kuma and Caddy.

---

## Operations

### Monitoring
```bash
docker stack services Calibre-web
kuma.* | grep calibre-web-automated
```

### Backups
The `/DockerVol/Calibre-web/Config` volume should be backed up regularly to prevent data loss. Critical configurations stored in this directory are marked as such.

### Restore
```bash
cd services/swarm/stack/Calibre-web
./deploy.sh
```

---

## Common Failures
| Failure | Symptom | Cause | Fix |
|---------|----------|-------|------|
| Service Down | Service not responding | Inconsistent environment variables | Review and update .env file correctly. |
| Data Corruption | Calibre-web or Caddy displaying errors | Insufficient disk space in /DockerVol/Calibre-web/Config | Increase disk space allocated to the configuration volume. |
| Inability to Access | Unable to reach calibre-web web UI | Configuration issues with caddy | Check for and correct any misconfigured labels, reverse proxy settings, or .env files. |

---

## Changelog

| Date | Commit | Summary |
|------|--------|---------|
| 2026-04-29 | 11e0a461 | Initial Documentation |
| 2026-04-29 | 8e2d4d37 | Minor configuration adjustments |
| 2026-04-29 | 52d09425 | Added environment variable for CWA_PORT_OVERRIDE |
| 2026-04-29 | d85b5700 | Minor formatting and clarity improvements |
| 2026-04-29 | 943a89fe | Initial commit |

---

## Notes
Generated by Gremlin on 2026-04-30T02:56:22.348Z
Source: swarm/Calibre-web.yaml
Review User Guide and Changelog sections