-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdeploy.sh
More file actions
executable file
·26 lines (21 loc) · 1.27 KB
/
deploy.sh
File metadata and controls
executable file
·26 lines (21 loc) · 1.27 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# 실행방법
# PASSWORD="your-password" ./deploy.sh
# 설정
SERVER_USER="jyp" # 서버 사용자 이름
SERVER_HOST="notice-crawler.ddns.net" # 서버 주소
SERVER_PATH="dev/crawler" # 서버의 애플리케이션 경로
JAR_NAME="crawler-0.0.1-SNAPSHOT.jar" # 빌드된 JAR 파일 이름
LOCAL_BUILD_PATH="build/libs" # 로컬 빌드 JAR 파일 경로
# 1. 로컬에서 JAR 파일 빌드
echo "로컬에서 애플리케이션 빌드 중..."
./gradlew bootJar || { echo "빌드 실패!"; exit 1; }
# 2. 서버의 기존 JAR 파일 삭제
echo "서버에서 기존 JAR 파일 삭제 중..."
sshpass -p "$PASSWORD" ssh $SERVER_USER@$SERVER_HOST "rm -f $SERVER_PATH/$JAR_NAME" || { echo "기존 JAR 파일 삭제 실패!"; exit 1; }
# 3. 새 JAR 파일 전송
echo "새 JAR 파일 전송 중..."
sshpass -p "$PASSWORD" scp $LOCAL_BUILD_PATH/$JAR_NAME $SERVER_USER@$SERVER_HOST:$SERVER_PATH || { echo "JAR 파일 전송 실패!"; exit 1; }
# 4. 서버에서 애플리케이션 재시작
echo "서버에서 애플리케이션 재시작 중..."
sshpass -p "$PASSWORD" ssh $SERVER_USER@$SERVER_HOST "cd $SERVER_PATH && ./restart.sh" || { echo "애플리케이션 재시작 실패!"; exit 1; }
echo "배포 완료!"