Files
vexplor_dev/scripts/prod/deploy.sh

49 lines
1.2 KiB
Bash
Raw Normal View History

2025-10-02 16:42:45 +09:00
#!/bin/bash
# PMS 운영 환경 배포 스크립트
# 사용법: ./docker/deploy/deploy.sh
set -e
# 프로젝트 루트로 이동
cd "$(dirname "$0")/../.."
# 도커 컴포즈 파일 경로
COMPOSE_FILE="docker/deploy/docker-compose.yml"
echo "======================================"
echo "PMS 운영 환경 배포"
echo "======================================"
# Git 최신 코드 가져오기
echo ""
echo "[1/4] Git 최신 코드 가져오기..."
2025-10-02 16:42:45 +09:00
git pull origin main
# 새로운 이미지 빌드 (구 컨테이너는 계속 서빙 중)
2025-10-13 16:04:13 +09:00
echo ""
echo "[2/4] Docker 이미지 빌드 (서비스 무중단)..."
docker-compose -f "$COMPOSE_FILE" build
2025-10-13 16:04:13 +09:00
# 변경된 컨테이너만 graceful 재생성 (이미지 해시 동일하면 건드리지 않음)
2025-10-02 16:42:45 +09:00
echo ""
echo "[3/4] 컨테이너 교체..."
docker-compose -f "$COMPOSE_FILE" up -d
2025-10-02 16:42:45 +09:00
# 오래된 이미지 정리 (서비스 복귀 후 후처리)
2025-10-02 16:42:45 +09:00
echo ""
echo "[4/4] Docker 이미지 정리..."
2025-10-02 16:42:45 +09:00
docker image prune -f
# 배포 완료
echo ""
echo "======================================"
echo "배포 완료!"
echo "======================================"
echo ""
echo "Frontend: https://v1.vexplor.com"
echo "Backend: https://api.vexplor.com"
echo ""
docker-compose -f "$COMPOSE_FILE" ps
echo ""