Anfangen · Kapitel 1
nexdiary einrichten
nexdiary läuft als ein einziger Docker-Container auf eurem eigenen Server, etwa auf einem NAS oder einem kleinen Rechner im Haus. Dieses Kapitel führt bis zum ersten Konto. Wie man nexdiary hinter einen Reverse Proxy stellt, welche Umgebungsvariablen es gibt und wie Updates gehen, steht ausführlich unter Selbst hosten.
Was du brauchst
- Einen Rechner mit Docker und Docker Compose. Das Abbild gibt es für Prozessoren von Intel und AMD (amd64) und für ARM (arm64).
- Einen Ordner auf einer lokalen Platte für die Daten. Eine SMB- oder NFS-Freigabe eignet sich nicht, weil die Datenbank SQLite ihre Sperren über ein Netzlaufwerk nicht zuverlässig setzt.
- Eine Authenticator-App auf dem Handy, für den zweiten Faktor. Jede App, die Codes aus sechs Ziffern zeigt, ist recht.
Den Server starten
- Compose-Datei anlegen
Übernimm die Datei von der Seite Selbst hosten. Sie holt das Abbild
ghcr.io/derkezorm/nexdiary, legt die Daten im Ordner./dataab und setztPUID,PGIDund die ZeitzoneTZ. - Container starten
Im Ordner der Datei:
Shelldocker compose up -d - Einrichtungscode holen
Beim Start schreibt nexdiary einen Einrichtungscode in sein Log. Bei jedem Start entsteht ein neuer, bis das erste Konto angelegt ist. Wer den Code lieber selbst festlegt, setzt
NEXDIARY_SETUP_TOKEN.Shelldocker logs nexdiary - nexdiary öffnen
Die Vorlage öffnet den Port
8550nur auf dem Rechner selbst. Dort erreichst du nexdiary unterhttp://127.0.0.1:8550. Soll es im Heimnetz erreichbar sein, schreibst du in der Compose-Datei8550:8000statt127.0.0.1:8550:8000. Ohne https gehen Passwörter und Codes dann allerdings unverschlüsselt durchs Netz. Für den Alltag gehört deshalb ein Reverse Proxy mit https davor.
Das erste Konto anlegen
Die erste Seite heißt „nexdiary einrichten“. Das Konto, das du hier anlegst, betreibt den Server. Es lädt die Familie ein und darf jede Einstellung ändern, die Tagebücher der anderen sieht es aber nie. Der Einrichtungscode sorgt dafür, dass niemand, der eine frische Instanz zufällig zuerst erreicht, sie in Besitz nehmen kann.
- Code, Name und Passwort eintragen
In „Einrichtungscode“ kommt der Code aus dem Log. Der „Name“ ist der, mit dem du dich anmeldest, 2 bis 64 Zeichen aus Buchstaben ohne Umlaute, Ziffern, Punkt, Bindestrich oder Unterstrich. Das „Passwort“ hat mindestens 12 Zeichen. Dann tippst du auf „Konto anlegen“.
- Den zweiten Faktor einrichten
Gleich danach fragt nexdiary nach dem zweiten Faktor. Er ist ab Werk für jedes Konto Pflicht, das sich mit Passwort anmeldet. Scanne den QR-Code mit deiner Authenticator-App oder tippe den Schlüssel darunter ab, trag bei „Code aus der App“ die sechs Ziffern ein, die die App zeigt, und drück „Einschalten“.
- Die Wiederherstellungscodes aufheben
Jetzt zeigt nexdiary acht Wiederherstellungscodes, und zwar nur dieses eine Mal. Jeder meldet dich einmal an, wenn das Handy nicht zur Hand ist. Mit „Kopieren“ oder „Als Datei speichern“ nimmst du sie mit. Bewahre sie getrennt vom Handy auf und tippe dann auf „Ich habe sie, weiter“.
Danach landest du auf „Heute“ und kannst sofort schreiben. Lieber ohne App? Einen Passkey, also die Anmeldung mit Fingerabdruck, Gesicht oder der PIN des Geräts, legst du später unter „Mein Konto“ im Reiter „Sicherheit“ an. Passkeys brauchen eine Adresse mit https, oder localhost.
Was gleich danach sinnvoll ist
- Den Hauptschlüssel sichern. nexdiary verschlüsselt, was jede Person schreibt, mit einem eigenen Schlüssel je Person. Diese Schlüssel hängen an einem Hauptschlüssel, den nexdiary beim ersten Start anlegt. Unter „Einstellungen“, Reiter „Sicherung“, Karte „Verschlüsselung“ lädst du ihn mit „Hauptschlüssel sichern“ herunter. Ohne ihn lässt sich keine Sicherung lesen, auch von dir nicht.
- Die Sicherung kennen. Ab Werk sichert nexdiary jede Nacht und behält sieben Sicherungen, im Datenordner auf demselben Server. Eine Kopie an einem anderen Ort legst du selbst an. Mehr im Kapitel Sicherung.
- Vor dem Weg ins Internet prüfen. Die Karte „Bereit fürs Internet?“ unter „Einstellungen“, Reiter „Anmeldung“, prüft acht Punkte selbst, von https bis zum gesicherten Hauptschlüssel. Mehr dazu unter Sicherheit.
- Die Familie einladen. Wie das geht, steht im nächsten Kapitel, Die Familie einladen.
Gut zu wissenDas erste Konto hat keine Mailadresse, und als Betreiber hast du niemanden über dir, der dir einen Link zum Zurücksetzen schickt. Vergisst du dein Passwort, machst du dir den Link im Container selbst, mit docker exec -it -u nexdiary nexdiary python -m app.reset_link <dein-name>. Er gilt einmal und 24 Stunden, dein zweiter Faktor bleibt.