From 9ad9480e0bc38e940a796642e792d11af7d5793d Mon Sep 17 00:00:00 2001 From: Nico Haider Date: Mon, 27 Apr 2026 17:50:09 +0200 Subject: [PATCH] vaultwarden backup script --- backup-vault.sh | 51 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100755 backup-vault.sh diff --git a/backup-vault.sh b/backup-vault.sh new file mode 100755 index 0000000..9f6b849 --- /dev/null +++ b/backup-vault.sh @@ -0,0 +1,51 @@ +#!/bin/bash +set -euo pipefail +source /home/nico/backup/lib.sh + +# ================================ +# Einstellungen +# ================================ +VAULTWARDEN_CONTAINER="vaultwarden" +BACKUP_DIR="/home/nico/backup/tmp/vaultwarden_backups" +REMOTE="onedrive-tdhaider:/IONOS/Backups" +DATE=$(date +%F_%H-%M-%S) + +# ================================ +# Backup-Ordner vorbereiten +# ================================ +mkdir -p "$BACKUP_DIR" + +# ================================ +# Vaultwarden Dateien sichern +# ================================ +log "📦 Backup starte für Vaultwarden..." + +docker run --rm \ + -v vaultwarden-data:/data \ + -v "$BACKUP_DIR":/backup \ + alpine \ + tar czf /backup/vaultwarden-backup-$DATE.tar.gz -C /data . \ +|| fail "Fehler beim Backup von Vaultwarden!" + +log "✅ Vaultwarden erfolgreich gesichert" + +# ================================ +# Upload auf OneDrive +# ================================ +log "☁️ Lade Vaultwarden Backup zu OneDrive hoch ..." +upload "$BACKUP_DIR/vaultwarden-backup-$DATE.tar.gz" "$REMOTE/vaultwarden" +log "✅ Upload abgeschlossen!" + +# ================================ +# Alte Backups löschen (nur letzte 14 behalten) +# ================================ +cleanup_keep_latest "$REMOTE/vaultwarden" 14 +log "✅ Cleanup abgeschlossen!" + +# ================================ +# Lokale Backups aufräumen +# ================================ +[[ -d "$BACKUP_DIR" ]] && rm -rf "$BACKUP_DIR" +log "🧹 Lokale temporäre Backups gelöscht." + +log "🏁 Vaultwarden Backup abgeschlossen!" \ No newline at end of file