Sicherung und Wiederherstellung
Labelyard hält seinen gesamten Zustand an zwei Stellen, und eine Sicherung braucht beide:
- Das Daten-Volume (
/dataim Container, in den Beispielen./dataneben der Compose-Datei). Darin liegt die SQLite-Datenbank: Drucker, Bogentypen, Bögen und ihre Felder, API-Schlüssel, Einstellungen und Aufträge. LABELYARD_SECRET_KEY. Geheimnisse in der Datenbank, etwa die API-Schlüssel der Integrationen, sind damit verschlüsselt. Eine Datenbank ohne ihren Schlüssel stellt alles wieder her außer diesen Geheimnissen; die Seite der Integrationen bittet dich dann, sie neu einzugeben.
Bewahr den Schlüssel woanders auf als die Sicherung des Volumes, zum Beispiel in deinem Passwortmanager.
Eine Sicherung ziehen
Abschnitt betitelt „Eine Sicherung ziehen“Die einfachste stimmige Kopie entsteht bei angehaltenem Container:
docker compose stop labelyardtar -czf labelyard-$(date +%F).tar.gz datadocker compose start labelyardOhne Anhalten nimmst du den Sicherungsbefehl von SQLite selbst auf die Datenbankdatei; er kopiert einen stimmigen Stand, während der Hub läuft (die Datei heißt printer-hub.db, solange du LABELYARD_DATABASE_URL nicht geändert hast):
sqlite3 data/printer-hub.db ".backup 'labelyard-backup.db'"Wiederherstellen
Abschnitt betitelt „Wiederherstellen“- Halte den Container an.
- Leg das gesicherte Verzeichnis
data(oder die Datenbankdatei) zurück, im Besitz des Benutzers, unter dem der Container läuft (1000:1000in den Beispielen). - Sorg dafür, dass der Container denselben
LABELYARD_SECRET_KEYwie vorher bekommt. - Starte den Container. Datenbankmigrationen laufen beim Start, eine Sicherung aus einer älteren Version wird also automatisch auf den aktuellen Stand gebracht. Mit einer neueren Datenbank zurück auf eine ältere Version zu gehen, wird nicht unterstützt.
Einstellungen exportieren
Abschnitt betitelt „Einstellungen exportieren“Admins können die Laufzeit-Einstellungen außerdem auf der Einstellungsseite als Datei exportieren. Dieser Export erleichtert das Umziehen von Einstellungen, ersetzt aber keine Sicherung des Volumes.