Files
Hyungi Ahn 550633b89d feat: 3-System 분리 프로젝트 초기 코드 작성
TK-FB(공장관리+신고)와 M-Project(부적합관리)를 3개 독립 시스템으로
분리하기 위한 전체 코드 구조 작성.
- SSO 인증 서비스 (bcrypt + pbkdf2 이중 해시 지원)
- System 1: 공장관리 (TK-FB 기반, 신고 코드 제거)
- System 2: 신고 (TK-FB에서 workIssue 코드 추출)
- System 3: 부적합관리 (M-Project 기반)
- Gateway 포털 (path-based 라우팅)
- 통합 docker-compose.yml 및 배포 스크립트

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 14:40:11 +09:00

47 lines
1.7 KiB
Bash
Executable File

#!/bin/bash
# ===================================================================
# TK Factory Services - 백업 스크립트
# ===================================================================
# 사용법: ./scripts/backup.sh [backup_dir]
# ===================================================================
set -e
BACKUP_DIR="${1:-./backups/$(date +%Y%m%d_%H%M%S)}"
mkdir -p "$BACKUP_DIR"
echo "=== TK Factory Services Backup ==="
echo "Backup directory: $BACKUP_DIR"
echo ""
# 1. MariaDB 백업
echo "[1/4] Backing up MariaDB..."
docker exec tk-mariadb mysqldump -u root -p"${MYSQL_ROOT_PASSWORD}" --all-databases \
> "$BACKUP_DIR/mariadb_all.sql" 2>/dev/null && \
echo " MariaDB backup: OK" || echo " MariaDB backup: SKIPPED (not running)"
# 2. PostgreSQL 백업
echo "[2/4] Backing up PostgreSQL..."
docker exec tk-postgres pg_dump -U "${POSTGRES_USER:-mproject}" "${POSTGRES_DB:-mproject}" \
> "$BACKUP_DIR/postgres_mproject.sql" 2>/dev/null && \
echo " PostgreSQL backup: OK" || echo " PostgreSQL backup: SKIPPED (not running)"
# 3. Upload 파일 백업
echo "[3/4] Backing up uploads..."
for vol in system1_uploads system2_uploads system3_uploads; do
if docker volume inspect "tk-factory-services_${vol}" >/dev/null 2>&1; then
docker run --rm -v "tk-factory-services_${vol}:/data" -v "$(cd "$BACKUP_DIR" && pwd):/backup" \
alpine tar czf "/backup/${vol}.tar.gz" -C /data . 2>/dev/null && \
echo " ${vol}: OK" || echo " ${vol}: SKIPPED"
fi
done
# 4. 설정 파일 백업
echo "[4/4] Backing up config files..."
cp -f .env "$BACKUP_DIR/.env.bak" 2>/dev/null || true
cp -f docker-compose.yml "$BACKUP_DIR/docker-compose.yml.bak" 2>/dev/null || true
echo ""
echo "=== Backup complete: $BACKUP_DIR ==="
ls -la "$BACKUP_DIR/"