#!/bin/bash # 색상 정의 RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' # No Color echo -e "${BLUE}================================${NC}" echo -e "${BLUE} 개발 환경 재빌드 & 재시작${NC}" echo -e "${BLUE}================================${NC}" echo "" # 1단계: 컴파일 echo -e "${YELLOW}[1/3] Java 소스 컴파일 중...${NC}" ./compile_only.sh if [ $? -ne 0 ]; then echo -e "${RED}✗ 컴파일 실패!${NC}" exit 1 fi echo -e "${GREEN}✓ 컴파일 완료${NC}" echo "" # 2단계: 도커 중지 및 삭제 echo -e "${YELLOW}[2/3] 기존 도커 컨테이너 중지 및 삭제 중...${NC}" docker-compose -f docker-compose.dev.yml down 2>&1 | grep -v "level=warning" if [ $? -ne 0 ]; then echo -e "${RED}✗ 도커 중지 실패!${NC}" exit 1 fi echo -e "${GREEN}✓ 기존 컨테이너 삭제 완료${NC}" echo "" # 3단계: 도커 이미지 재빌드 및 시작 echo -e "${YELLOW}[3/3] 도커 이미지 재빌드 및 시작 중...${NC}" docker-compose -f docker-compose.dev.yml build --no-cache 2>&1 | grep -v "level=warning" | tail -5 if [ $? -ne 0 ]; then echo -e "${RED}✗ 도커 빌드 실패!${NC}" exit 1 fi docker-compose -f docker-compose.dev.yml up -d 2>&1 | grep -v "level=warning" if [ $? -ne 0 ]; then echo -e "${RED}✗ 도커 시작 실패!${NC}" exit 1 fi echo -e "${GREEN}✓ 도커 컨테이너 시작 완료${NC}" echo "" # Tomcat 시작 대기 echo -e "${YELLOW}Tomcat 시작 대기 중...${NC}" sleep 10 # 상태 확인 docker ps | grep wace-plm-dev > /dev/null if [ $? -eq 0 ]; then echo "" echo -e "${GREEN}================================${NC}" echo -e "${GREEN} 🎉 재빌드 완료!${NC}" echo -e "${GREEN}================================${NC}" echo "" echo -e "${BLUE}서버 접속: ${NC}http://localhost:9090" echo "" # 로그 확인 팁 echo -e "${YELLOW}💡 로그 확인: ${NC}docker logs -f wace-plm-dev" echo -e "${YELLOW}💡 컨테이너 중지: ${NC}docker-compose -f docker-compose.dev.yml down" else echo -e "${RED}✗ 컨테이너가 실행되지 않았습니다!${NC}" echo -e "${YELLOW}로그 확인: ${NC}docker logs wace-plm-dev" exit 1 fi