Files
backup-scripts/backup-vault.sh
T
2026-04-27 17:50:09 +02:00

51 lines
1.5 KiB
Bash
Executable File

#!/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!"