HomeBlogÜber

Calibre auf Synology

Von Jewgeni
Kategorie: Homeserver
March 17, 2022
3 Minuten
Calibre auf Synology

Inhaltsverzeichnis

01
Voraussetzungen
02
Benutzer Docker
03
Calibre Server Installation
04
Calibre Server Konfiguration
05
Calibre Web Server Installation
06
Calibre Web Server Konfiguration
07
Backup

Calibre ist ein E-Book-Manager. Damit lassen sich E-Books anzeigen, konvertieren und katalogisieren. Calibre kann auch mit E-Book-Lesegeräten kommunizieren. Metadaten für Bücher in der Bibliothek können automatisch heruntergeladen werden. Auch Zeitungen lassen sich damit verwalten. Ich beschreibe heute, wie man einen Calibre-Server auf seinem Synology-NAS startet und anschließend auch mit Calibre-Web verwalten kann.

Voraussetzungen

Ich nutze ein Synology NAS. Es handelt sich um ein DS220+(Amazon Affiliate-Link) mit 10 GB RAM(Amazon Affiliate-Link).

So viele Ressourcen sind jedoch nicht für Calibre nötig. Es lässt sich auch ein anderes Gerät verwenden, auf dem Docker läuft. In der Verhangenheit habe ich eine Anleitung für Calibre mit Traefik geschrieben und auch im Asustor NAS Setup wird Calibre erwähnt.

Ausreichend Speicherplatz für die Bücher sollte vorhanden sein. In meiner Bibliothek befinden sich momentan knapp 150 Bücher, sie nehmen etwa 2,3 GB Speicherplatz ein.

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 ist dieses Mal nicht nötig, weil keine externe Datenbank gestartet wird.

Benutzer Docker

Ich richte zunächst für eine bessere Rechteverwaltung eine Gruppe Docker ein.

Gruppe für Docker einrichten
Gruppe für Docker einrichten

Und ich erstelle einen neuen Benutzer, der am Ende die Rechte am Calibre Container haben soll.

Neuen Benutzer einrichten
Neuen Benutzer einrichten

Ich füge diesen Nutzer in die Docker-Gruppe ein.

Nutzer in die Docker Gruppe hinzufügen
Nutzer in die Docker Gruppe hinzufügen

Für jeden Dienst einen einzelnen Benutzer zu erstellen, ist zu aufwendig, deshalb habe ich nur einen Docker Benutzer.

Jedenfalls muss ich noch die ID vom Benutzer “docker” und der Gruppe “docker” herausfinden. Dazu aktiviere ich temporär SSH und verbinde mich über ein Terminal (z. B. in VSCode) mit dem NAS.

SSH-Dienst aktivieren
SSH-Dienst aktivieren

ssh adminbenutzername@{ip-adresse-vom-nas}

Ich möchte als Erstes die UserID vom Nutzer docker erfahren.

id -u docker

Diese Zahl merke ich mir als UserID. Danach möchte ich die GruppenID der Gruppe docker.

id -Gn docker
# jetzt sehe ich die Namen der Gruppen
id -G docker
# jetzt sehe ich die Nummern der Gruppen

Die Nummer an der Stelle der Gruppe “docker” merke ich mir als GruppenID. Ich verlasse das Terminal.

exit

Außerdem schalte ich SSH wieder aus.

SSH-Dienst ausschalten
SSH-Dienst ausschalten

Jetzt erstelle ich einen neuen Freigabeordner ohne Prüfsummen-Check und nenne ihn calibre.

Neuen Ordner erstellen
Neuen Ordner erstellen

Die Docker Gruppe benötigt Zugriffsrechte auf den Ordner.

Rechteverwaltung für Gruppen
Rechteverwaltung für Gruppen

Der Docker-Nutzer am besten auch.

Zugriffsrecht für Benutzer
Zugriffsrecht für Benutzer

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.

Docker-Image
Docker-Image

Das lade ich mit dem Tag latest herunter. Das Image ist ca. 1 GB groß. Sobald es runtergeladen ist, starte ich einen neuen Container mit diesem Image.

Calibre-Container

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 es Europe/Berlin.
  • PASSWORD: Das Passwort des Benutzers abc.

Den Container starte ich.

Calibre Server Konfiguration

Jetzt kann ich den Server aufrufen, indem ich in einem Web-Browser auf die IP-Adresse des NAS mit dem eingestellten Port (8080) zugreife.

Den Namen Calibre-Bibliothek ändere ich zu books.

Calibre Einrichtung
Calibre Einrichtung

Beim E-Book Gerät kann ein Gerät standardmäßig ausgewählt werden. Die Einstellung lässt sich auch später verändern. Im Zweifel einfach auf generisch lassen.

Sobald man seine Bibliothek sieht, ist die Einrichtung abgeschlossen. Im calibre/data Ordner sollte nun auch das Verzeichnis mit der Calibre-Bibliothek zu sehen sein.

Calibre-Bibliothek im Calibre Ordner
Calibre-Bibliothek im Calibre Ordner

Calibre Web Server Installation

Als Nächstes wird der Web Server benötigt, damit man die Bücher in einem schöneren GUI verwalten kann. Dazu suche ich diesmal nach dem Image linuxserserver/calibre-web und lade es runter. Auch hier den Tag latest wählen. Dieses Image ist ca. 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 es Europe/Berlin.
  • DOCKER_MODS: Das kann auf linuxserver/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 auf 1 setzen. Ansonsten kann es leer gelassen werden.

Calibre-Web Umgebung
Calibre-Web Umgebung

Den Calibre Container stoppe ich an dieser Stelle.

Container
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.

Datenbank Konfiguration
Datenbank Konfiguration

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.

Basis Konfiguration
Basis Konfiguration

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 einfach bewerkstelligen. Dazu das Programm Cloud Sync aus dem Paket-Zentrum installieren.

Cloud Sync
Cloud Sync

Damit richte ich eine neue Aufgabe ein, dass mir den Ordner books mit Google Drive oder Microsoft One Drive usw. synchronieiseren soll.

Cloud Sync Aufgabe
Cloud Sync Aufgabe

Bitte die Kommentarfunktion nutzen bei Fragen / Verbesserungsvorschlägen / Kritik usw.

Ich wünsche viel Spaß beim Lesen.


Tags

#anleitung#calibre#docker#ebook#firefly#homeserver#nas#portainer#synology
Vorheriger Blogpost
Firefly III auf Synology

Kategorien

Aktuelles
Excel
Finanzen
Gaming
Gatsby
Git
Google
Homeserver
Server
Tailwind
Werbung

Inhaltsverzeichnis

1
Voraussetzungen
2
Benutzer Docker
3
Calibre Server Installation
4
Calibre Server Konfiguration
5
Calibre Web Server Installation
6
Calibre Web Server Konfiguration
7
Backup

Related Posts

Vaultwarden mit Docker auf einem Synology NAS
May 04, 2023
May 06, 2023
3 min

Links

KontaktÜber

Social Media