#!/bin/bash

# Document Server 데이터베이스 백업 스크립트
# 시놀로지 NAS 환경에서 사용

BACKUP_DIR="/volume1/docker/document-server/backups"
TIMESTAMP=$(date +"%Y%m%d_%H%M%S")
CONTAINER_NAME="document-server-db"

# 백업 디렉토리 생성
mkdir -p "$BACKUP_DIR"

echo "🔄 데이터베이스 백업 시작: $TIMESTAMP"

# PostgreSQL 백업
docker exec $CONTAINER_NAME pg_dump -U docuser -d document_db > "$BACKUP_DIR/document_db_$TIMESTAMP.sql"

# 압축
gzip "$BACKUP_DIR/document_db_$TIMESTAMP.sql"

# 7일 이상 된 백업 파일 삭제
find "$BACKUP_DIR" -name "*.sql.gz" -mtime +7 -delete

echo "✅ 백업 완료: $BACKUP_DIR/document_db_$TIMESTAMP.sql.gz"

# 업로드 파일 백업 (선택사항)
if [ "$1" = "--include-uploads" ]; then
    echo "🔄 업로드 파일 백업 시작..."
    tar -czf "$BACKUP_DIR/uploads_$TIMESTAMP.tar.gz" -C /volume1/docker/document-server uploads/
    echo "✅ 업로드 파일 백업 완료: $BACKUP_DIR/uploads_$TIMESTAMP.tar.gz"
fi

echo "🎉 전체 백업 작업 완료"
