Files
WhatIDo/scripts/backup.sh

23 lines
775 B
Bash
Executable File

#!/usr/bin/env bash
# Создаёт архив переноса: БД (dump) + фотографии (uploads).
# Использование: ./scripts/backup.sh
set -euo pipefail
cd "$(dirname "$0")/.."
STAMP=$(date +%Y%m%d-%H%M%S)
mkdir -p backups
echo ">> Экспорт БД"
docker compose exec -T db pg_dump -U app -d whereldo | gzip > backups/db.sql.gz
echo ">> Копирование фотографий"
rm -rf backups/_uploads
mkdir -p backups/_uploads
docker cp "whatido-app-1:/app/uploads/." "backups/_uploads/"
rm -rf backups/_uploads/.thumbs
echo ">> Сборка архива"
tar -czf "backups/whatido-backup-$STAMP.tar.gz" -C backups db.sql.gz _uploads
rm -rf backups/_uploads backups/db.sql.gz
echo "Готово: backups/whatido-backup-$STAMP.tar.gz"