Calibre auf Synology
Installation von Calibre zur Verwaltung von E-Books auf einem Synology NAS.
Inhaltsverzeichnis
Calibre ist eine vielseitige Lösung zur Verwaltung von E-Books. Neben der Anzeige, Konvertierung und Katalogisierung von E-Books, ermöglicht Calibre die Kommunikation mit E-Book-Lesegeräten und das automatische Herunterladen von Metadaten für Bücher in einer Bibliothek. Es lässt sich sogar für die Verwaltung von Zeitungen verwenden. In diesem Beitrag zeige ich, wie ein Calibre-Server auf einem Synology NAS gestartet wird und die Bibliothek dann mit Calibre-Web verwaltet werden kann.
Voraussetzungen
Ich nutze ein Synology NAS, das Modell DS220+(Amazon Affiliate-Link) mit 10 GB RAM(Amazon Affiliate-Link). Allerdings kann grundsätzlich jedes Gerät verwendet werden, auf dem Docker läuft.
Die benötigten Ressourcen für Calibre sind nicht besonders hoch, aber Sie sollten sicherstellen, dass ausreichend Speicherplatz für Ihre Bücher vorhanden ist. Meine eigene Bibliothek umfasst derzeit etwa 150 Bücher, die etwa 2,3 GB Speicherplatz einnehmen.
In der Vergangenheit habe ich eine Anleitung für Calibre mit Traefik geschrieben und auch im Asustor NAS Setup wird Calibre erwähnt.
Ein Reverse-Proxy-Manager im Netzwerk ist hilfreich, unabhängig davon, ob er sich auf einem anderen Gerät oder dem Synology NAS befindet.
Für die Installation nutzen wir das DSM vom Synology-NAS. Portainer wird in diesem Fall nicht benötigt, da keine externe Datenbank gestartet wird.
Einrichtung des Docker Benutzers
Zunächst richte ich eine Docker-Gruppe ein, um eine bessere Rechteverwaltung zu gewährleisten.
Anschließend erstelle ich einen neuen Benutzer, der die Rechte am Calibre Container haben soll.
Ich füge diesen Benutzer in die Docker-Gruppe ein.
Für eine effizientere Verwaltung erstelle ich nur einen Docker-Benutzer, anstatt für jeden Dienst einen eigenen Benutzer zu erstellen.
Um die ID vom Benutzer “docker” und der Gruppe “docker” zu ermitteln, aktiviere ich temporär SSH und verbinde mich über ein Terminal (z. B. in VSCode) mit dem NAS.
ssh adminbenutzername@{ip-adresse-vom-nas}
Zunächst möchte ich die UserID vom Nutzer docker erfahren.
id -u docker
Ich merke mir diese Zahl als UserID. Als Nächstes möchte ich die GruppenID der Gruppe docker herausfinden.
id -Gn docker
# jetzt sehe ich die Namen der Gruppen
id -G docker
# jetzt sehe ich die Nummern der Gruppen
Ich merke mir die Nummer an der Stelle der Gruppe “docker” als GruppenID. Dann verlasse ich das Terminal.
exit
Ich deaktiviere auch SSH wieder.
Jetzt erstelle ich einen neuen Freigabeordner ohne Prüfsummen-Check und nenne ihn calibre.
Die Docker-Gruppe benötigt Zugriffsrechte auf den Ordner.
Es ist auch ratsam, dem Docker-Benutzer Zugriffsrechte zu gewähren.
In diesem Verzeichnis erstelle ich zwei neue Ordner:
- data
- web-data
Calibre Server Installation
Ich öffne Docker im DSM und suche nach dem Image linuxserver/calibre.
Dieses lade ich mit dem Tag latest
herunter. Das Image ist ca. 1 GB groß. Sobald es heruntergeladen ist, starte ich einen neuen Container mit diesem Image.
In den erweitern Eigenschaften füge ich unter Volume den Ordner calibre/data hinzu. In diesen binde ich das Verzeichnis config
.
Unter Port stelle ich eine Verbindung mit dem Port 8080 ein. Die linke Zahl kann frei gewählt werden (insbesondere sollte das dann gemacht werden, wenn bereits ein anderer Dienst auf 8080 läuft). Die rechte sollte 8080 bleiben (außer man passt das bei Umgebung an). In der Umgebung müssen vier Umgebungsvariablen hinzugefügt werden:
PUID
: Die persönliche User-ID des Benutzers (docker)PGID
: Die persönliche Gruppen-ID der Gruppe (docker)TZ
: Die Zeitzone, für Deutschland ist esEurope/Berlin
.PASSWORD
: Das Passwort des Benutzersabc
.
Anschließend starte ich den Container.
Calibre Server Konfiguration
Jetzt kann ich auf den Server zugreifen, indem ich in einem Web-Browser die IP-Adresse des NAS mit dem eingestellten Port (8080) aufrufe. Benutzername ist abc
und das Passwort ist das, was ich in der Umgebung eingestellt habe.
Ich ändere den Namen Calibre-Bibliothek
zu books
.
Beim E-Book Gerät kann ein Gerät standardmäßig ausgewählt werden. Diese Einstellung lässt sich auch später noch ändern. Ist man sich nicht sicher, lässt man sie am besten einfach auf generisch.
Sobald man seine Bibliothek sieht, ist die Einrichtung abgeschlossen. Im calibre/data-Ordner sollte nun auch das Verzeichnis mit der Calibre-Bibliothek sichtbar sein.
Installation des Calibre Web Servers
Als Nächstes wird der Web Server benötigt, um die Bücher in einer benutzerfreundlicheren GUI verwalten zu können. Dazu suche ich nach dem Image linuxserserver/calibre-web und lade es herunter. Auch hier den Tag latest
wählen. Dieses Image ist etwa 600 MB groß.
Bei den Volumes binde ich den Ordner calibre/web-data
mit dem Mount-Pfad /config
und einen weiteren Ordner calibre/data/books
mit dem Mount-Pfad /books
. Unter Port-Einstellungen wähle ich unter welchem Port Calibre-Web erreichbar sein soll. Der Container-Port bleibt auf 8083.
In der Umgebung können diesmal 5 Umgebungsvariablen hinzugefügt werden:
PUID
: Die persönliche User-ID des Benutzers (docker)PGID
: Die persönliche Gruppen-ID der Gruppe (docker)TZ
: Die Zeitzone, für Deutschland ist esEurope/Berlin
.DOCKER_MODS
: Das kann auflinuxserver/calibre-web:calibre
gesetzt werden, damit Bücher konvertiert werden können. Es funktioniert nicht auf einem ARM System.OAUTHLIB_RELAX_TOKEN_SCOPE
: Wenn man in Erwägung zieht Google OAuth zu nutzen, kann man den Wert auf1
setzen. Ansonsten kann es leer gelassen werden.
An dieser Stelle stoppe ich den Calibre-Container.
Calibre Web Server Konfiguration
Jetzt richte ich in meinem Reverse-Proxy einen Proxy-Host für den Port 8083 ein, ansonsten muss man direkt die IP-Adresse mit Port 8083 aufrufen.
Die Anmeldedaten sind admin
als Benutzername und admin123
als Passwort.
Beim Pfad zur Datenbank wähle ich /books
aus.
Anschließend sollte man sein Passwort im Profil (oben rechts) ändern.
Außerdem lässt sich in der Basiskonfiguration einstellen, dass Bücher über den Web-Server hochgeladen werden dürfen.
Außerdem sollte man bei der Benutzerkonfiguration den Haken setzen, dass man selbst die Bücher ansehen darf.
Damit ist die Einrichtung beendet.
Backup
Möchte man seine Bücher in der Cloud sichern, lässt sich das auf einer Synology leicht bewerkstelligen. Dazu das Programm Cloud Sync aus dem Paket-Zentrum installieren.
Mit Cloud Sync richte ich eine neue Aufgabe ein, um den Ordner books
mit Google Drive oder Microsoft One Drive usw. zu synchronisieren.
Bitte die Kommentarfunktion nutzen bei Fragen / Verbesserungsvorschlägen / Kritik usw.
Viel Spaß beim Lesen!