22 lines
743 B
Bash
Executable File
22 lines
743 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/"
|
|
|
|
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" |