#!/bin/bash set -e echo "======================================" echo " Web Portal - Build & Deploy Script" echo "======================================" # Docker Desktop의 쿠버네티스 컨텍스트 확인 echo "" echo "[1/5] 쿠버네티스 컨텍스트 확인..." kubectl config current-context echo "✅ 쿠버네티스 연결 OK" # Docker 이미지 빌드 echo "" echo "[2/5] Docker 이미지 빌드..." cd "$(dirname "$0")" docker build -t portal-backend:latest ./backend/ docker build -t portal-frontend:latest ./frontend/ echo "✅ 이미지 빌드 완료" # 네임스페이스 및 시크릿 생성 echo "" echo "[3/5] 네임스페이스 및 기본 리소스 생성..." kubectl apply -f k8s/01-namespace.yaml kubectl apply -f k8s/03-secrets.yaml echo "✅ 네임스페이스 생성 완료" # PostgreSQL 배포 echo "" echo "[4/5] PostgreSQL 배포..." kubectl apply -f k8s/02-postgres.yaml echo "PostgreSQL 준비 대기중..." kubectl rollout status deployment/postgres -n web-portal --timeout=120s echo "✅ PostgreSQL 준비 완료" # Backend & Frontend 배포 echo "" echo "[5/5] Backend & Frontend 배포..." kubectl apply -f k8s/04-backend.yaml kubectl apply -f k8s/05-frontend.yaml echo "서비스 준비 대기중..." kubectl rollout status deployment/backend -n web-portal --timeout=120s kubectl rollout status deployment/frontend -n web-portal --timeout=120s echo "✅ 모든 서비스 배포 완료" echo "" echo "======================================" echo " 🎉 배포 성공!" echo "======================================" echo "" echo " 접속 URL: http://localhost:30090" echo "" echo " 기본 계정:" echo " 관리자 - ID: admin PW: admin1234" echo " 일반 - ID: user1 PW: user1234" echo "" echo " 상태 확인: kubectl get all -n web-portal" echo "======================================"