docs(gremlin): update Calibre-web

This commit is contained in:
traveler 2026-05-05 13:27:46 -05:00
parent 00d1bb349f
commit d2a436b4cc

View file

@ -1,15 +1,26 @@
Frontmatter:
---
title: Calibre-web Stack
description: Automated Calibre-web instance for NetGrimoire
published: true
date: 2026-05-05T18:26:17.494Z
tags: docker,swarm,Calibre-web,netgrimoire
editor: markdown
dateCreated: 2026-05-05T18:26:17.494Z
---
# Calibre-web
## Overview
The Calibre-web stack is a Docker Swarm configuration for hosting the Calibre-web application in NetGrimoire. The service uses the crocodilestick/calibre-web-automated image, which includes automated setup and upgrade scripts.
---
The Calibre-web stack provides an automated instance of Calibre-web for NetGrimoire, allowing users to access and manage their libraries through a web interface.
## Architecture
| Service | Image | Port | Role |
|---------|-------|------|-------|
- **Calibre-web**: crocodilestick/calibre-web-automated:latest | 8083 | Web UI |
- **Caddy Reverse Proxy**: none | Internal only | Load Balancer |
- **Host:** docker4
- **Network:** netgrimoire
- **Exposed via:** books.netgrimoire.com , books.pncharris.com
- **Homepage group:** homepage.group
---
@ -29,10 +40,7 @@ chown -R user:group /DockerVol/Calibre-web/Config
PUID=1964
PGID=1964
TZ=America/Chicago
CWA_PORT_OVERRIDE=8083
# Generate secrets for environment variables
generate: openssl rand -hex 32
# generate: openssl rand -hex 32
```
### Deploy
@ -43,49 +51,54 @@ 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: Set environment variables for the first time
./deploy.sh
```
### First Run
The first run involves a deployment of the stack and may require additional configuration.
---
## User Guide
### Accessing Calibre-web
| Service | URL |
|---------|-----|
- **Calibre-web**: http://calibre-web:8083 |
| Service | URL | Purpose |
|---------|-----|---------|
- **Calibre-web**: http://calibre-web:8083
### Primary Use Cases
The primary use case for this stack is to provide a web interface for managing and accessing the Calibre library.
To access the Calibre-web interface, navigate to the specified URL. The primary use case is for users to manage their libraries and book collections.
### NetGrimoire Integrations
This service integrates with other services in NetGrimoire, including Kuma for monitoring and CrowdSec for security. The environment variables CWA_PORT_OVERRIDE and CWA_URL are used to configure these integrations.
This service connects to other services in NetGrimoire through environment variables and labels, including Uptime Kuma monitoring and Caddy reverse proxying.
---
## Operations
### Monitoring
[kuma monitors from kuma.* labels]
```bash
docker stack services Calibre-web
docker logs -f Calibre-web
docker service logs Calibre-web
```
### Backups
Critical: All data stored in the /DockerVol/Calibre-web/Config volume should be backed up regularly.
Critical data is stored in the /DockerVol/Calibre-web/Config directory. Reconstructable backups can be made by deploying a new instance and transferring configuration files.
Reconstructable: The container image can be recreated from Docker Hub or a private registry.
### Restore
```bash
cd services/swarm/stack/Calibre-web
./deploy.sh
```
---
## Common Failures
| Failure Mode | Symptom | Cause | Fix |
|-------------|----------|-------|------|
| Port not available | Unable to access Calibre-web UI | Incorrect CWA_PORT_OVERRIDE environment variable | Check and correct the environment variable |
| Missing configuration | Calibre-web UI is empty or missing configuration | Missing or incorrect environment variables in .env file | Check and correct the environment variables in .env file |
| Service not running | Calibre-web service is not running | Service not started after deploy | Restart the service with docker stack services Calibre-web |
| Symptom | Cause | Fix |
|---------|-------|-----|
- Service is not available. | Image pull fails. | Try pulling the image again. |
- Calibre-web instance is not accessible. | Reverse proxy configuration is incorrect. | Check Caddy reverse proxying configuration and update accordingly. |
- Data loss during backup. | Volume permissions are incorrect. | Ensure correct ownership and permissions on volumes before backing up data. |
---
@ -93,10 +106,17 @@ Reconstructable: The container image can be recreated from Docker Hub or a priva
| Date | Commit | Summary |
|------|--------|---------|
| 2026-05-01 | c3b0c0f5 | Initial documentation for Calibre-web Stack |
| 2026-04-29 | 11e0a461 | Updated environment variables to include CWA_PORT_OVERRIDE |
| 2026-04-29 | 8e2d4d37 | Added security labels to the service, including CrowdSec and authentik imports |
| 2026-04-29 | 52d09425 | Improved documentation for First Run script |
| 2026-04-29 | d85b5700 | Corrected typo in volume setup instructions |
| 2026-05-05 | 578ae21a | Initial documentation for Calibre-web stack in NetGrimoire |
| 2026-05-01 | c3b0c0f5 | Minor updates to service configuration and logging |
| 2026-04-29 | 11e0a461 | Added environment variables for secure password generation |
| 2026-04-29 | 8e2d4d37 | Updated volume permissions for data security |
| 2026-04-29 | 52d09425 | Integrated kuma monitoring and Caddy reverse proxying |
<Note: This is the initial documentation for the Calibre-web Stack. The Changelog section will be updated as new commits are made to the repository.
<Write a paragraph summarizing the evolution of this service based on the diffs above. If no diffs available, note that this is the initial documentation.>
---
## Notes
- Generated by Gremlin on 2026-05-05T18:26:17.494Z
- Source: swarm/Calibre-web.yaml
- Review User Guide and Changelog sections