인프라/Jenkins

센토스 서버 스프링부트 war 파일 배포 연습기록

소프 2021. 11. 13.

 

사전준비

해당 서버에 톰캣 세팅

젠킨스 개인키,공개키 생성 후 등록

 

젠킨스 기본구조는 이대로 ㄱㄱ

https://tecoble.techcourse.co.kr/post/2021-10-10-jenkins/

 

CI/CD가 뭔가요? 실전편

지난번 CI/CD가 뭔가요? - 이론편에서 CI/CD에 대해서 알아보았다. 이번 글에서는 jenkins를 이용해 하나의 CI/CD…

tecoble.techcourse.co.kr

 

나만의 맞춤

- 빌드 성공 후 굳이 실행시킬 필요 없어서 script 빈칸 

- 만약 도커를 쓴다면 도커허브에 war파일을 push

 

 

반드시 Test Configuration을 눌러 연결성공여부도 확인하자

- gcp를 쓰기 때문에 Hostname에 내부 IP를 적음

- remote directory : 젠킨스가 접속할 기본 경로 

> 지금은 특정 프로젝트의 webapps폴더로만 세팅함 

> 만약 하나의 젠킨스 서버에 여러 프로젝트를 세팅한다면 /home으로만 하면 될듯ㅎ

> 젠킨스가 등록한 scripts를 실행시킨다는 개념으로 보면 될듯?

 

 

원격지 서버에 war 파일 전송

remote directory : ssh servers에서 이미 war파일을 배포할 경로를 지정했기 때문에 따로안적음

> 만약 sssh servers에서 remote directory를 /home으로 했으면 "{프로젝트폴더명}/webapps로 적어야 될듯(실험은 안해봄)

#!/bin/bash

sudo sh /home/demo/bin/shutdown.sh
sudo rm -rf /home/demo/webapps/ROOT
sudo rm /home/demo/webapps/ROOT.war

sudo mv /home/demo/webapps/demo.war /home/demo/webapps/ROOT.war
sudo sh /home/demo/bin/startup.sh

- 반드시 절대경로롤 적기(상대경로는 안되는듯)

댓글