From 7fc23c2847ce1b29d13274666caa20e06d5e4396 Mon Sep 17 00:00:00 2001 From: JensFalk Date: Tue, 9 Jun 2026 16:42:54 +0200 Subject: [PATCH] restore-erpnext.sh aktualisiert --- restore-erpnext.sh | 43 ++++++++++++++++++++++++++----------------- 1 file changed, 26 insertions(+), 17 deletions(-) diff --git a/restore-erpnext.sh b/restore-erpnext.sh index 72b7ec8..cff138d 100644 --- a/restore-erpnext.sh +++ b/restore-erpnext.sh @@ -2,21 +2,20 @@ # ============================================= # ERPNext Universal S3 Restore Script -# Für Timme Hosting, Hetzner, AWS etc. +# Für Timme Hosting, Hetzner, Backblaze etc. # ============================================= # ================== KONFIGURATION ================== -SITE="xxx" # Sitename -S3_ENDPOINT=" " # Serveradresse (mit https://) -S3_BUCKET="bucket-name" # Bucket -S3_ACCESS_KEY="" # Access Key -S3_SECRET_KEY="" # Secret Key -S3_REGION="eu-central-1" +SITE="erp.berchmans.de" # Kann als Parameter übergeben werden +S3_ENDPOINT="https://s3.timmehosting.de" # ← Bei Timme Hosting +S3_BUCKET="dein-bucket-name" # ← Dein Bucket-Name +S3_ACCESS_KEY="" # ← Dein Access Key +S3_SECRET_KEY="" # ← Dein Secret Key -ENCRYPTION_KEY="" # Encryption Key +ENCRYPTION_KEY="" # ← Dein Encryption Key # =================================================== -# SITE kann als Parameter übergeben werden +# SITE als Parameter möglich if [ "$1" != "" ]; then SITE="$1" fi @@ -33,7 +32,7 @@ echo "Bucket: $S3_BUCKET" echo "Startzeit: $(date)" echo "==================================================" -# AWS CLI prüfen und ggf. installieren +# AWS CLI installieren falls fehlt if ! command -v aws &> /dev/null; then echo "AWS CLI wird installiert..." sudo apt update && sudo apt install awscli -y @@ -41,17 +40,23 @@ fi cd ~/frappe-bench -# 1. Neueste Backup-Dateien suchen und herunterladen -echo "1. Lade neuestes Backup aus S3 herunter..." - +# Lokalen Backup-Ordner erstellen LOCAL_BACKUP_DIR=~/backups/$(date +%Y-%m-%d)_s3_restore mkdir -p $LOCAL_BACKUP_DIR -# Neueste Dateien herunterladen (nach Timestamp sortiert) +# 1. Neueste Backup-Dateien herunterladen +echo "1. Lade neuestes Backup aus S3 herunter..." + +AWS_CMD="aws s3 cp s3://$S3_BUCKET/ $LOCAL_BACKUP_DIR/ --recursive \ + --endpoint-url $S3_ENDPOINT \ + --no-sign-request false" + +# Credentials per Environment-Variablen (sicherer und stabiler) +export AWS_ACCESS_KEY_ID=$S3_ACCESS_KEY +export AWS_SECRET_ACCESS_KEY=$S3_SECRET_KEY + aws s3 cp s3://$S3_BUCKET/ $LOCAL_BACKUP_DIR/ --recursive \ --endpoint-url $S3_ENDPOINT \ - --aws-access-key-id $S3_ACCESS_KEY \ - --aws-secret-access-key $S3_SECRET_KEY \ --exclude "*" \ --include "*database-enc.sql.gz" \ --include "*files-enc.tar" \ @@ -59,6 +64,9 @@ aws s3 cp s3://$S3_BUCKET/ $LOCAL_BACKUP_DIR/ --recursive \ echo " → Download abgeschlossen. Dateien in: $LOCAL_BACKUP_DIR" +# Dateien prüfen +ls -la $LOCAL_BACKUP_DIR + # 2. Restore durchführen echo "2. Restore wird durchgeführt..." @@ -78,4 +86,5 @@ bench restart echo "==================================================" echo "Restore erfolgreich abgeschlossen!" -echo "Endzeit: $(date)" \ No newline at end of file +echo "Endzeit: $(date)" +