Files
global_it24_landing/backup-db.sh
DeepAgent c5f3377a62 Add PostgreSQL configuration and database management tools
- Added PostgreSQL service to docker-compose.yml
- Updated .env.example with complete database settings
- Created DATABASE.md with comprehensive PostgreSQL guide
- Added backup-db.sh script for automatic database backups
- Configured health checks for both PostgreSQL and app containers
- Added Docker network for secure container communication
2025-10-27 11:45:42 +00:00

43 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
# Скрипт для создания резервной копии базы данных PostgreSQL
# Настройки
BACKUP_DIR="./backups"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
BACKUP_FILE="${BACKUP_DIR}/db_backup_${TIMESTAMP}.sql"
# Создаем директорию для бэкапов если не существует
mkdir -p ${BACKUP_DIR}
echo "🔄 Создание резервной копии базы данных..."
echo "📁 Файл: ${BACKUP_FILE}"
# Создаем бэкап
docker exec -t global-it24-postgres pg_dump -U globalit24 globalit24_db > ${BACKUP_FILE}
if [ $? -eq 0 ]; then
echo "✅ Резервная копия успешно создана!"
# Сжимаем бэкап
gzip ${BACKUP_FILE}
echo "📦 Архив создан: ${BACKUP_FILE}.gz"
# Показываем размер
SIZE=$(du -h ${BACKUP_FILE}.gz | cut -f1)
echo "💾 Размер: ${SIZE}"
# Удаляем бэкапы старше 30 дней
find ${BACKUP_DIR} -name "db_backup_*.sql.gz" -mtime +30 -delete
echo "🧹 Старые бэкапы (>30 дней) удалены"
else
echo "❌ Ошибка при создании резервной копии!"
exit 1
fi
echo ""
echo "📊 Список всех бэкапов:"
ls -lh ${BACKUP_DIR}/db_backup_*.sql.gz 2>/dev/null | tail -10