Docker deployment improvements: fixed backup/restore, sticky headers, quality code display
This commit is contained in:
49
restore_database.sh
Executable file
49
restore_database.sh
Executable file
@@ -0,0 +1,49 @@
|
||||
#!/bin/bash
|
||||
# Safe Database Restore Script
|
||||
|
||||
set -e
|
||||
|
||||
if [ -z "$1" ]; then
|
||||
echo "Usage: $0 <backup_file.sql>"
|
||||
echo "Example: $0 backups/backup_20251113.sql"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
BACKUP_FILE="$1"
|
||||
|
||||
if [ ! -f "$BACKUP_FILE" ]; then
|
||||
echo "❌ Error: Backup file not found: $BACKUP_FILE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "============================================"
|
||||
echo "🔄 Database Restore Process"
|
||||
echo "============================================"
|
||||
echo "Backup file: $BACKUP_FILE"
|
||||
echo ""
|
||||
|
||||
# Step 1: Stop web application
|
||||
echo "1️⃣ Stopping web application..."
|
||||
docker compose stop web
|
||||
echo "✅ Web application stopped"
|
||||
echo ""
|
||||
|
||||
# Step 2: Restore database
|
||||
echo "2️⃣ Restoring database..."
|
||||
# Use sed to skip the problematic first line with sandbox mode comment
|
||||
sed '1{/^\/\*M!999999/d;}' "$BACKUP_FILE" | docker compose exec -T db bash -c "mariadb -u trasabilitate -pInitial01! trasabilitate"
|
||||
echo "✅ Database restored"
|
||||
echo ""
|
||||
|
||||
# Step 3: Start web application
|
||||
echo "3️⃣ Starting web application..."
|
||||
docker compose start web
|
||||
sleep 5
|
||||
echo "✅ Web application started"
|
||||
echo ""
|
||||
|
||||
echo "============================================"
|
||||
echo "✅ Database restore completed successfully!"
|
||||
echo "============================================"
|
||||
echo ""
|
||||
echo "Application URL: http://localhost:8781"
|
||||
Reference in New Issue
Block a user