diff --git a/scripts/deploy-production.sh b/scripts/deploy-production.sh new file mode 100755 index 0000000..2a7f0d2 --- /dev/null +++ b/scripts/deploy-production.sh @@ -0,0 +1,53 @@ +#!/bin/bash +set -euo pipefail + +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +RED='\033[0;31m' +BLUE='\033[0;34m' +NC='\033[0m' + +DEPLOY_DIR="/volume1/docker/service/jinaju/chocoadmin" +SERVICE="chocoadmin" +URL="https://chocoadmin.jinaju.com" + +echo -e "${RED}==============================${NC}" +echo -e "${RED} chocoadmin 운영 배포${NC}" +echo -e "${RED}==============================${NC}" +echo "" +echo -e "${RED}운영 서버에 배포합니다. 계속하시겠습니까? (yes 입력)${NC}" +read -r CONFIRM +if [ "$CONFIRM" != "yes" ]; then + echo "배포를 취소했습니다." + exit 0 +fi + +echo -e "\n${YELLOW}[1/5] 디렉토리 이동${NC}" +cd "$DEPLOY_DIR" +echo " $(pwd)" + +echo -e "\n${YELLOW}[2/5] git pull${NC}" +git pull --ff-only + +echo -e "\n${YELLOW}[3/5] proxy-network 확인${NC}" +if docker network inspect proxy-network >/dev/null 2>&1; then + echo " proxy-network 존재" +else + docker network create proxy-network + echo " proxy-network 생성 완료" +fi + +echo -e "\n${YELLOW}[4/5] 빌드 및 컨테이너 시작${NC}" +docker compose up -d --build --remove-orphans + +echo -e "\n${YELLOW}[5/5] NPM nginx 리로드${NC}" +docker exec npm nginx -s reload +echo " 리로드 완료" + +echo -e "\n${YELLOW}컨테이너 상태${NC}" +docker compose ps + +echo -e "\n${GREEN}배포 완료${NC}" +echo " $URL" +echo "" +echo "로그: docker compose -f $DEPLOY_DIR logs -f $SERVICE" diff --git a/scripts/deploy-stage.sh b/scripts/deploy-stage.sh new file mode 100755 index 0000000..0797e4a --- /dev/null +++ b/scripts/deploy-stage.sh @@ -0,0 +1,46 @@ +#!/bin/bash +set -euo pipefail + +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +BLUE='\033[0;34m' +NC='\033[0m' + +DEPLOY_DIR="/volume1/docker/service/jinaju/stage-chocoadmin" +COMPOSE_FILE="docker-compose.stage.yml" +SERVICE="stage-chocoadmin" +URL="https://stage-chocoadmin.jinaju.com" + +echo -e "${BLUE}==============================${NC}" +echo -e "${BLUE} stage-chocoadmin 배포${NC}" +echo -e "${BLUE}==============================${NC}" + +echo -e "\n${YELLOW}[1/5] 디렉토리 이동${NC}" +cd "$DEPLOY_DIR" +echo " $(pwd)" + +echo -e "\n${YELLOW}[2/5] git pull${NC}" +git pull --ff-only + +echo -e "\n${YELLOW}[3/5] proxy-network 확인${NC}" +if docker network inspect proxy-network >/dev/null 2>&1; then + echo " proxy-network 존재" +else + docker network create proxy-network + echo " proxy-network 생성 완료" +fi + +echo -e "\n${YELLOW}[4/5] 빌드 및 컨테이너 시작${NC}" +docker compose -f "$COMPOSE_FILE" up -d --build --remove-orphans + +echo -e "\n${YELLOW}[5/5] NPM nginx 리로드${NC}" +docker exec npm nginx -s reload +echo " 리로드 완료" + +echo -e "\n${YELLOW}컨테이너 상태${NC}" +docker compose -f "$COMPOSE_FILE" ps + +echo -e "\n${GREEN}배포 완료${NC}" +echo " $URL" +echo "" +echo "로그: docker compose -f $DEPLOY_DIR/$COMPOSE_FILE logs -f $SERVICE"