Some checks failed
SonarQube Analysis / SonarQube Scan (push) Has been cancelled
- H/F/I/O SS304/GRAPHITE/CS/CS 패턴에서 4개 구성요소 모두 표시 - 기존 SS304 + GRAPHITE → SS304/GRAPHITE/CS/CS로 완전한 구성 표시 - 외부링/필러/내부링/추가구성 모든 정보 포함 - 구매수량 계산 모달에서 정확한 재질 정보 확인 가능
65 lines
1.9 KiB
Bash
Executable File
65 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# TK-MP-Project 시놀로지 배포 스크립트
|
|
# 사용법: ./deploy-synology.sh [NAS_IP] [SSH_PORT]
|
|
|
|
NAS_IP=${1:-"192.168.0.3"}
|
|
SSH_PORT=${2:-"22"}
|
|
NAS_USER="admin"
|
|
PROJECT_NAME="tk-mp-project"
|
|
REMOTE_PATH="/volume1/docker/${PROJECT_NAME}"
|
|
|
|
echo "🚀 TK-MP-Project 시놀로지 배포 시작..."
|
|
echo "📡 대상 NAS: ${NAS_IP}:${SSH_PORT}"
|
|
|
|
# 1. 프로젝트 압축
|
|
echo "📦 프로젝트 압축 중..."
|
|
tar -czf ${PROJECT_NAME}.tar.gz \
|
|
--exclude='node_modules' \
|
|
--exclude='venv' \
|
|
--exclude='*.pyc' \
|
|
--exclude='__pycache__' \
|
|
--exclude='.git' \
|
|
--exclude='uploads' \
|
|
.
|
|
|
|
# 2. NAS로 파일 전송
|
|
echo "📤 NAS로 파일 전송 중..."
|
|
scp -P ${SSH_PORT} ${PROJECT_NAME}.tar.gz ${NAS_USER}@${NAS_IP}:/tmp/
|
|
|
|
# 3. NAS에서 배포 실행
|
|
echo "🔧 NAS에서 배포 실행 중..."
|
|
ssh -p ${SSH_PORT} ${NAS_USER}@${NAS_IP} << EOF
|
|
# 디렉토리 생성
|
|
sudo mkdir -p ${REMOTE_PATH}
|
|
cd ${REMOTE_PATH}
|
|
|
|
# 기존 컨테이너 정지 및 제거
|
|
sudo docker-compose -f docker-compose.synology.yml down || true
|
|
|
|
# 프로젝트 압축 해제
|
|
sudo tar -xzf /tmp/${PROJECT_NAME}.tar.gz -C ${REMOTE_PATH}
|
|
sudo rm /tmp/${PROJECT_NAME}.tar.gz
|
|
|
|
# Docker 이미지 빌드 및 실행
|
|
sudo docker-compose -f docker-compose.synology.yml build
|
|
sudo docker-compose -f docker-compose.synology.yml up -d
|
|
|
|
echo "✅ 배포 완료!"
|
|
echo "🌐 프론트엔드: http://${NAS_IP}:10173"
|
|
echo "🔧 백엔드 API: http://${NAS_IP}:10080"
|
|
echo "🗄️ 데이터베이스: ${NAS_IP}:15432"
|
|
echo "🔄 Redis: ${NAS_IP}:16379"
|
|
EOF
|
|
|
|
# 4. 로컬 임시 파일 정리
|
|
rm ${PROJECT_NAME}.tar.gz
|
|
|
|
echo "🎉 배포가 완료되었습니다!"
|
|
echo ""
|
|
echo "📋 서비스 URL:"
|
|
echo " 프론트엔드: http://${NAS_IP}:10173"
|
|
echo " 백엔드 API: http://${NAS_IP}:10080/docs"
|
|
echo ""
|
|
echo "🔍 컨테이너 상태 확인:"
|
|
echo " ssh -p ${SSH_PORT} ${NAS_USER}@${NAS_IP} 'sudo docker ps'" |