Zum Hauptinhalt springen

Speicherung und Backups

Kanera enthält zwei Dinge, die Sie nicht neu generieren können: die PostgreSQL-Datenbank und hochgeladene Dateien. Entscheiden Sie, wo jeder wohnt, bevor Sie andere einladen.

Speicher hochladen​

Standardmäßig werden hochgeladene Dateien im gespeichert kanera_uploads Docker-Volume.

Legen Sie für S3-kompatiblen Speicher Folgendes fest:

S3_REGION=auto
S3_BUCKET=kanera
S3_ACCESS_KEY_ID=...
S3_SECRET_ACCESS_KEY=...
S3_ENDPOINT=https://s3.example.com
S3_PUBLIC_URL_PREFIX=https://cdn.example.com/kanera

Wenn die erforderlichen S3-Werte festgelegt sind, hat S3 Vorrang vor dem lokalen Upload-Speicher.

Organisationsadministratoren können auch zwischen lokaler Festplatte und S3 wählen Einstellungen -> Organisation -> Speicher in der App, unter Speicher-Backend. Umgebungswerte haben Vorrang und die Seite markiert die Steuerelemente als schreibgeschützt, wenn sie festgelegt sind.

Das selbst gehostete Kanera verfügt über kein Speicherkontingent, sodass die Anhangkapazität dem entspricht, was das Volume oder der Bucket bereitstellt. Dateivolumen und -speicherung erhöhen in der Regel den Festplattenbedarf stärker als Kanera selbst, achten Sie also auf das Festplattenwachstum. Auf derselben Speicherseite wird angezeigt, wie viel jeder Arbeitsbereich verbraucht, und ermöglicht Administratoren das Suchen und Löschen großer oder alter Dateien, einschließlich derjenigen auf archivierten Karten. Siehe Speicher.

Backups​

Sichern Sie beide:

DatenStandort
PostgreSQL-Datenkanera_pgdata Docker-Volume.
Hochgeladene Dateienkanera_uploads Docker-Volume, sofern kein S3-Speicher konfiguriert ist.

Manuelles PostgreSQL-Backup:

docker compose exec -T postgres pg_dump -U kanera kanera | gzip > kanera-$(date +%F).sql.gz

Kanera kann auch verschlüsselte vollständige PostgreSQL-Backups auf S3-kompatiblem Speicher ausführen:

DB_BACKUPS_ENABLED=true
DB_BACKUP_ENCRYPTION_PASSPHRASE=<openssl rand -hex 32>
DB_BACKUP_TIMES_UTC=00:15,12:15,16:45
DB_BACKUP_RETENTION_DAYS=14
DB_BACKUP_S3_PREFIX=backups/postgres

Der Backup-Dienst komprimiert den Dump, verschlüsselt ihn mit GPG symmetrischem AES-256, lädt ihn auf S3 hoch und bereinigt alte Backups nach erfolgreichen Uploads. Speichern DB_BACKUP_ENCRYPTION_PASSPHRASE an einem dauerhaften Ort auch außerhalb des Einsatzes; Es ist erforderlich, Backups wiederherzustellen.

Bewahren Sie Datenbank- und hochgeladene Dateisicherungen nicht auf der primären Festplatte des Servers auf. Eine Sicherung auf demselben Volume wie die Daten übersteht den Ausfall, für den sie existiert, nicht.

Geheimnisse, die es wert sind, bewahrt zu werden​

Der Verlust dieser Daten kostet Sie Daten statt Betriebszeit:

WertWenn es sich ändert oder verloren geht
DB_BACKUP_ENCRYPTION_PASSPHRASEVorhandene verschlüsselte Backups können nicht wiederhergestellt werden.
SECRETS_ENCRYPTION_KEYGespeicherte Integrationszugangsdaten wie Chat-Ziel und persönliche Webhook-Geheimnisse können nicht mehr entschlüsselt werden.
MFA_ENCRYPTION_KEYRegistrierte Authentifikatoren und ausstehende MFA-Herausforderungen werden ungültig.
MEDIA_SIGNING_SECRETVorhandene signierte Medien-URLs werden nicht mehr aufgelöst.
JWT_SECRETAlle sind abgemeldet.