In KolleK gibt es kein automatisches Backup. Die Daten zu schützen ist Aufgabe des Betreibers, und diese Seite ist der Ablauf dafür. Sie ist heute auch die eigentliche Antwort auf "Wie exportiere ich alles", wie Deine Sammlungsdaten sichern es aus Sicht des Sammlers erklärt.
Was ein vollständiges Backup ist
Drei Dinge, und alle drei zählen:
Die Datenbank, im Volume db-data. Jeder Datensatz: Konten, Sammlungen, Objekte, Exemplare, Historie.
Das Storage-Volume, storage-data. Jedes hochgeladene Foto und Dokument.
Der Anwendungsschlüssel, APP_KEY aus deiner .env (plus APP_PREVIOUS_KEYS, falls gesetzt).
Warnung
Ein Backup ohne den passenden Anwendungsschlüssel ist kein Backup. Verschlüsselte Felder werden ohne den Schlüssel, mit dem sie geschrieben wurden, als unlesbarer Chiffretext wiederhergestellt. Bewahre den Schlüssel zusammen mit oder neben jedem Backup auf, das du erstellst. Siehe Der Anwendungsschlüssel und Verschlüsselung.
docker run --rm -v kollek_storage-data:/data -v "$PWD":/backup alpine tar czf /backup/kollek-storage.tar.gz -C /data .
Kopiere beide Dateien, sowie eine Kopie deiner .env, irgendwohin außerhalb des Servers. Automatisiere das mit einem nächtlichen Cronjob und behalte mehr als eine Generation. Ein Backup, aus dem du noch nie wiederhergestellt hast, ist eine Hoffnung, kein Plan.
Wiederherstellen
Auf einer frischen Maschine stellst du in dieser Reihenfolge wieder her:
Installiere dieselbe KolleK-Version gemäß Installation mit Docker, setze aber APP_KEY (und APP_PREVIOUS_KEYS) aus deinem Backup, statt einen neuen Schlüssel zu generieren.
Starte den Stack einmal, damit die Volumes existieren, und lade dann den Datenbank-Dump:
docker compose exec -T mysql mysql -u root -p"$DB_ROOT_PASSWORD" "$DB_DATABASE" < kollek-backup.sql
Entpacke das Storage-Archiv in das Storage-Volume:
docker run --rm -v kollek_storage-data:/data -v "$PWD":/backup alpine tar xzf /backup/kollek-storage.tar.gz -C /data
Starte den Stack mit docker compose up -d neu und melde dich an, um alles zu überprüfen.
Der Befehl, der alles löscht
Warnung
docker compose down -v entfernt die benannten Volumes, also die Datenbank und jede hochgeladene Datei. Verwende das Flag -v niemals auf einer echten Instanz. Einfaches docker compose down ist sicher und lässt die Volumes unangetastet.