#!/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 "🎉 전체 백업 작업 완료"