본문 바로가기

:SERVER/AWS

[easyupclass] AWS EC2 스프링 서버 재배포

반응형

1. 기존 서버 중지
SPRING_PID=$(prep -f v1-0.0.1-SHAPSHOT.jar)
kill -9 $SPRING_PID
2. 다운로드 받은 github 폴더 삭제 (f옵션은 force. 강제 삭제 옵션)
rm -rf /home/ubuntu/aws-v1
3. git clone 다운로드
git clone https://github.com/codingspecialist/aws-v1-git 

4. gradlew 실행 권한주기
cd /home/ubuntu/aws-v1
chmod u+x gradlew

5. 빌드하기
./gradlew build

6. jar 실행
cd /home/ubuntu/aws-v1/build/libs
nohup java -jar v1-0.0.1-SNAPSHOT.jar 1>log.out 2>err.out

7. cron으로 자동 재시작
crontab -l > crontab_new
echo "* * * * * /home/ubuntu/spring-restart.sh" 1>>crontab_new
crontab crontab_new
rm crontab_new


2-7번 까지 실행하는 동안 서버가 멈춰 있다. 
재배포 시 ec2를 새로 생성해서 재배포를 하고, 배포가 완료되면
기존 서버를 종료 시키면 서버가 멈춰있는 시간이 없게 된다.

 


출처: 이지업클래스개발자를 위한 AWS DevOps 입문 [CI/CD 무중단 배포]
https://easyupclass.e-itwill.com/course/course_view.jsp?id=74&rtype=0&ch=course

반응형