- 순찰/점검 기능 개선 (zone-detail 페이지 추가) - 출근/근태 시스템 개선 (연차 조회, 근무현황) - 작업분석 대분류 그룹화 및 마이그레이션 스크립트 - 모바일 네비게이션 UI 추가 - NAS 배포 도구 및 문서 추가 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
75 lines
2.3 KiB
Bash
Executable File
75 lines
2.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# =============================================================================
|
|
# TK-FB-Project Synology NAS 배포 스크립트
|
|
# =============================================================================
|
|
|
|
set -e
|
|
|
|
echo "=========================================="
|
|
echo "TK-FB-Project 배포 시작"
|
|
echo "=========================================="
|
|
|
|
# 1. 환경 변수 파일 확인
|
|
if [ ! -f .env ]; then
|
|
echo "❌ .env 파일이 없습니다."
|
|
echo " .env.synology 파일을 복사하고 값을 수정하세요:"
|
|
echo " cp .env.synology .env"
|
|
exit 1
|
|
fi
|
|
|
|
# 2. Cloudflare Tunnel 토큰 확인
|
|
if grep -q "여기에_터널_토큰_입력" .env; then
|
|
echo "⚠️ Cloudflare Tunnel 토큰이 설정되지 않았습니다."
|
|
echo " .env 파일에서 CLOUDFLARE_TUNNEL_TOKEN을 설정하세요."
|
|
fi
|
|
|
|
# 3. Docker 이미지 빌드
|
|
echo ""
|
|
echo "🔨 Docker 이미지 빌드 중..."
|
|
docker-compose -f docker-compose.synology.yml build --no-cache
|
|
|
|
# 4. 기존 컨테이너 중지
|
|
echo ""
|
|
echo "🛑 기존 컨테이너 중지 중..."
|
|
docker-compose -f docker-compose.synology.yml down 2>/dev/null || true
|
|
|
|
# 5. 컨테이너 시작
|
|
echo ""
|
|
echo "🚀 컨테이너 시작 중..."
|
|
docker-compose -f docker-compose.synology.yml up -d
|
|
|
|
# 6. DB 초기화 대기
|
|
echo ""
|
|
echo "⏳ 데이터베이스 초기화 대기 중 (30초)..."
|
|
sleep 30
|
|
|
|
# 7. 데이터베이스 복원 (백업 파일이 있는 경우)
|
|
BACKUP_FILE=$(ls -t backup_*.sql 2>/dev/null | head -1)
|
|
if [ -n "$BACKUP_FILE" ]; then
|
|
echo ""
|
|
echo "📦 데이터베이스 복원 중: $BACKUP_FILE"
|
|
docker exec -i tkfb_db mysql -u root -p"$MYSQL_ROOT_PASSWORD" < "$BACKUP_FILE"
|
|
echo "✅ 데이터베이스 복원 완료"
|
|
fi
|
|
|
|
# 8. 상태 확인
|
|
echo ""
|
|
echo "=========================================="
|
|
echo "📊 컨테이너 상태"
|
|
echo "=========================================="
|
|
docker-compose -f docker-compose.synology.yml ps
|
|
|
|
echo ""
|
|
echo "=========================================="
|
|
echo "✅ 배포 완료!"
|
|
echo "=========================================="
|
|
echo ""
|
|
echo "접속 URL:"
|
|
echo " - Web UI: http://localhost:80"
|
|
echo " - API: http://localhost:3005"
|
|
echo " - phpMyAdmin: http://localhost:8080"
|
|
echo ""
|
|
echo "Cloudflare Tunnel 설정 시:"
|
|
echo " - 외부 접속: https://your-domain.com"
|
|
echo ""
|