44 lines
1.2 KiB
Bash
Executable File
44 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
echo "======================================"
|
|
echo " Web Portal - 쿠버네티스 배포 스크립트"
|
|
echo "======================================"
|
|
echo ""
|
|
|
|
# 1. Docker 이미지 빌드
|
|
echo "[1/4] Docker 이미지 빌드 중..."
|
|
docker build -t web-portal-backend:latest ./backend
|
|
docker build -t web-portal-frontend:latest ./frontend
|
|
echo "✅ 이미지 빌드 완료"
|
|
echo ""
|
|
|
|
# 2. 기존 배포 삭제 (있을 경우)
|
|
echo "[2/4] 기존 리소스 정리 중..."
|
|
kubectl delete namespace web-portal --ignore-not-found=true
|
|
sleep 3
|
|
echo "✅ 정리 완료"
|
|
echo ""
|
|
|
|
# 3. 쿠버네티스 배포
|
|
echo "[3/4] 쿠버네티스 배포 중..."
|
|
kubectl apply -f k8s/portal.yaml
|
|
echo "✅ 매니페스트 적용 완료"
|
|
echo ""
|
|
|
|
# 4. Pod 준비 대기
|
|
echo "[4/4] Pod 시작 대기 중... (최대 3분)"
|
|
kubectl wait --for=condition=ready pod -l app=frontend -n web-portal --timeout=180s
|
|
kubectl wait --for=condition=ready pod -l app=backend -n web-portal --timeout=180s
|
|
echo ""
|
|
|
|
echo "======================================"
|
|
echo "✅ 배포 완료!"
|
|
echo ""
|
|
echo "🌐 접속 주소: http://localhost:30080"
|
|
echo ""
|
|
echo "기본 계정:"
|
|
echo " 관리자: admin / admin1234"
|
|
echo " 일반: user1 / user1234"
|
|
echo "======================================"
|