Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 10 additions & 19 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -173,48 +173,39 @@ jobs:
exec 2> >(awk '{ fflush(); print strftime("[%Y-%m-%d %H:%M:%S]"), $0 }' | tee -a "$LOG" >&2)

echo "🚀 배포 시작..."

source /etc/environment || true

OWNER_LC="${{ github.repository_owner }}"
OWNER_LC="${OWNER_LC,,}"
IMAGE_TAG='${{ needs.makeTagAndRelease.outputs.tag_name }}'
IMAGE_REPOSITORY='${{ env.IMAGE_REPOSITORY }}'
IMAGE="ghcr.io/${OWNER_LC}/${IMAGE_REPOSITORY}:${IMAGE_TAG}"
CONTAINER_NAME="${{ env.CONTAINER_NAME }}"

echo "📦 이미지: ${IMAGE}"
echo "📦 컨테이너: ${CONTAINER_NAME}"

cd /home/ssm-user/WEB6_8_FiveLogic_BE || exit 1

echo "📥 Docker 이미지 다운로드 중..."
docker pull $IMAGE

echo "🛑 기존 컨테이너 중지 중..."
docker-compose stop $CONTAINER_NAME || true
docker-compose rm -f $CONTAINER_NAME || true
docker pull ghcr.io/${OWNER_LC}/${IMAGE_REPOSITORY}:${IMAGE_TAG}

sed -i "s|image:.*${IMAGE_REPOSITORY}.*|image: ${IMAGE}|g" docker-compose.yml
echo "🛑 기존 컨테이너 중지 및 제거 중..."
docker-compose down || true

echo "🚀 컨테이너 시작 중..."
docker-compose up -d $CONTAINER_NAME
echo "🚀 모든 컨테이너 시작 중..."
docker-compose up -d

echo "🏥 헬스체크 중..."
echo "🏥 spring-boot 헬스체크 중..."
for i in {1..30}; do
if docker exec $CONTAINER_NAME curl -f http://localhost:8080/health > /dev/null 2>&1; then
echo "✅ 서버 정상 구동!"
if docker exec spring-boot curl -f http://localhost:8080/health > /dev/null 2>&1; then
echo "✅ spring-boot 서버 정상 구동!"
break
fi
echo "대기 중... ($i/30)"
sleep 2
done

echo "📊 컨테이너 상태:"
docker-compose ps $CONTAINER_NAME
docker-compose ps

echo "📋 최근 로그:"
docker-compose logs --tail=50 $CONTAINER_NAME
docker-compose logs --tail=50

echo "🧹 오래된 이미지 정리 중..."
{
Expand Down