À quoi ça sert ?
Calibre-Web présente votre bibliothèque de livres numériques (créée avec le logiciel Calibre) dans le navigateur : lecture en ligne, téléchargement, envoi vers une liseuse, étagères et comptes pour la famille.
Pour qui ?
Les lecteurs qui ont une collection d’ebooks gérée avec Calibre.
Après l'installation
- Connectez-vous avec admin / admin123 et changez immédiatement le mot de passe.
- Indiquez /books comme emplacement de la bibliothèque : le dossier doit contenir une bibliothèque Calibre (fichier metadata.db).
Le docker-compose
Exemple derrière Traefik, avec une explication sur chaque ligne. Pour l'adapter à votre cas (Nginx Proxy Manager, port local…), utilisez le générateur.
# docker-compose.yml : Calibre-Web
# Ce fichier décrit les « conteneurs » à lancer : chaque conteneur est une petite
# boîte isolée qui contient un programme. Lancez-le avec : docker compose up -d
services:
calibre-web:
# Le programme à télécharger (l'« image »), avec sa version
image: lscr.io/linuxserver/calibre-web:latest
container_name: calibre-web
# Redémarre tout seul après une panne ou un redémarrage du serveur
restart: unless-stopped
# Réglages de l'application. Les valeurs ${...} viennent du fichier .env
environment:
PUID: "1000"
PGID: "1000"
TZ: Europe/Paris
# Dossiers du serveur partagés avec le conteneur (dossier_serveur:dossier_conteneur).
# Vos données sont stockées ici : ce sont ces dossiers qu'il faut sauvegarder.
volumes:
- ./config:/config
- /srv/livres:/books
# Réseau partagé avec le reverse proxy pour qu'il puisse joindre l'application
networks:
- traefik
# Indique à Traefik de publier l'application sur https://ebooks.mondomaine.fr avec un certificat HTTPS
labels:
- traefik.enable=true
- traefik.http.routers.calibreweb.rule=Host(`ebooks.mondomaine.fr`)
- traefik.http.routers.calibreweb.entrypoints=websecure
- traefik.http.routers.calibreweb.tls.certresolver=letsencrypt
- traefik.http.services.calibreweb.loadbalancer.server.port=8083
# Le réseau du reverse proxy existe déjà : on s'y raccroche
networks:
traefik:
external: true