본문 바로가기
SpringBoot Server

서버배포 2단계) GitHub 를 이용한 자바 서버 배포 ABC

by ssury94 2025. 1. 15.
 
 
 

 

저번 글에서 파일질라와 터미널 명령어를 통해 서버를 배포해보았습니다.

하지만 매번 코드가 바뀔때마다 파일을 올리고, 다시 실행하는건 CI/CD 환경에서는 알맞지않죠!

 

많은 개발자들은 git Repository를 클론하여 서로의 변경사항을 풀, 푸쉬받아 협업 개발하고 있습니다.

EC2서버에도 git을 통한 클론, 풀, 푸쉬가 가능합니다.

 

 

EC2서버에 Git 설치

git 홈페이지에서 인스톨 명령어를 확인했습니다.

 

 

$ yum install git - 리눅스에 프로그램 설치

 

 

 

EC2서버에 Repository 클론

 

레포지토리 주소를 확인하여

 

$ git clone 주소   - 클론합니다.

 

 

클론 할 때는 깃허브 아이디와 비밀번호를 요구하는데요.

비밀번호가 아닌 Personal access tokens으로 로그인 해야합니다. 발급받아옵시다~

설정 > 개발자 설정 > Personal access tokens

처음 한번만 키 값 확인이 가능하니, 잃어버리지 않도록 주의하세요.

 

 

 

 

Repository 폴더도 확인 잘 되네요. (와중에 이제서야 보이는 선명한 오타...) 클론 완료!

 

 

dev 상태를 prod로 변경

EC2 깃에 클론한 이후에는 터널링이 필요 없으므로  prod 로 yml 설정 변경합니다.

 

변경사항을 풀 받기

 

 

풀 잘 받아왔는지도 확인해봅시다.

application이 있는 /srs/main/resorces 이동 (이동은 $ cd 폴더이름 )

$ cat application.yml - cat 파일 보여줘

풀도 잘 받아왔습니다!

 

 

 

EC2서버에 Maven 설치

클린, 패키지 처리를 위해 EC2서버에도 Maven을 설치합니다.

$ sudo yum install maven - Maven 설치

 

Maven 클린, 패키지로 JAR 파일 생성

$ cd 프로젝트 폴더 - 프로젝트 폴더로 이동 << 폴더 위치에 주의! 폴더 위치는 $ pwd 로 확인가능합니다.

$ mvn clean

$ mvn package 

 

→ .jar파일 생성

 

 

jar 파일 생성 완료

 

$ mv ***.jar   app.jar - 알아보기 쉽게 파일명도 app.jar로 바꾸겠습니다. 

 

$ sudo nohup java -jar -Dspring.profiles.active=prod app.jar &

이제 깃허브에서 클론한 서버를 구동 하였습니다.

 

그런데!

더 좋은 방법이 있다면?

 

서버 자동화!!