ERP-node/start-backend-linux.sh

81 lines
2.6 KiB
Bash

#!/bin/bash
echo "============================================"
echo "PLM 솔루션 - 백엔드 (Spring Boot) 시작 - Linux"
echo "============================================"
echo ""
echo "🚀 Spring Boot 백엔드를 Linux 서버에서 시작합니다..."
echo ""
# 시스템 정보 출력
echo "시스템 정보:"
echo " OS: $(uname -s)"
echo " Architecture: $(uname -m)"
echo " Kernel: $(uname -r)"
echo ""
# Docker 버전 확인
echo "Docker 환경 확인:"
docker --version 2>/dev/null || echo " ❌ Docker가 설치되지 않았습니다."
docker-compose --version 2>/dev/null || echo " ❌ Docker Compose가 설치되지 않았습니다."
echo ""
echo "1. Docker 이미지 빌드 중..."
docker-compose -f docker-compose.backend.linux.yml build --no-cache
echo ""
echo "2. 기존 백엔드 컨테이너 정리 중..."
docker-compose -f docker-compose.backend.linux.yml down -v
echo ""
echo "3. Docker 네트워크 생성 중..."
docker network create pms-network 2>/dev/null || echo "네트워크가 이미 존재합니다."
echo ""
echo "4. 백엔드 컨테이너 시작 중..."
docker-compose -f docker-compose.backend.linux.yml up -d
echo ""
echo "5. 서비스 상태 확인 중..."
sleep 20
echo ""
echo "============================================"
echo "🎉 백엔드 서비스가 시작되었습니다!"
echo "============================================"
echo ""
echo "📊 서비스 접속 정보:"
echo " [DATABASE] PostgreSQL: http://39.117.244.52:11132"
echo " [BACKEND] Spring Boot: http://localhost:8080/api"
echo ""
echo "💡 API 테스트:"
echo " 헬스체크: curl http://localhost:8080/api/actuator/health"
echo ""
echo "🔧 관리 명령어:"
echo " 상태 확인: docker-compose -f docker-compose.backend.linux.yml ps"
echo " 로그 확인: docker-compose -f docker-compose.backend.linux.yml logs -f"
echo " 중지하기: docker-compose -f docker-compose.backend.linux.yml down"
echo ""
echo "============================================"
# 헬스체크
echo ""
echo "🏥 백엔드 헬스체크 수행 중..."
for i in {1..12}; do
if curl -s http://localhost:8080/api/actuator/health >/dev/null 2>&1; then
echo " ✅ 백엔드 서비스 정상"
echo " 📋 헬스체크 결과:"
curl -s http://localhost:8080/api/actuator/health | jq . 2>/dev/null || curl -s http://localhost:8080/api/actuator/health
break
else
echo " ⏳ 백엔드 응답 대기 중... ($i/12)"
sleep 5
fi
done
echo ""
echo "🎯 백엔드 시작 완료! API는 http://localhost:8080/api 에서 확인하세요."
echo ""
read -p "계속하려면 Enter 키를 누르세요..."