1.2 KiB
1.2 KiB
PostgreSQL Auto Backup
В проект добавлен сервис postgres-backup в docker-compose.yml.
Что делает сервис:
- по расписанию запускает
pg_dumpосновной БД - при
BACKUP_INCLUDE_CHAT_DB=trueтакже архивирует chat-БД - сохраняет архивы в папку
./backups - удаляет архивы старше
BACKUP_RETENTION_DAYS
Настройки в .env:
BACKUP_TZ=Europe/Moscow
BACKUP_INTERVAL_SECONDS=86400
BACKUP_RETENTION_DAYS=7
BACKUP_GZIP_LEVEL=6
BACKUP_INCLUDE_CHAT_DB=true
Запуск:
docker compose up -d postgres-backup
Проверка логов:
docker compose logs --tail=100 postgres-backup
Проверка архивов:
ls -lah backups
Имена файлов:
backups/main_YYYY-MM-DD_HH-MM-SS.sql.gzbackups/chat_YYYY-MM-DD_HH-MM-SS.sql.gz
Ручной backup при необходимости:
docker compose exec -T postgres pg_dump -U "$POSTGRES_USER" -d "$POSTGRES_DB" | gzip > backups/manual_$(date +%F_%H-%M-%S).sql.gz