본문 바로가기
Infra/Jenkins

[Jenkins] Jenkins를 통한 기초적인 빌드 작업

by 진꿈청 2024. 7. 7.

Jenkins의 CI/CD

우리는 Jenkins가 지원하는 다양한 플러그인을 활용하여 자동화된 CI/CD 시스템 구축이 가능하다.

 

통상적으로, 개발자들은 Git이라는 SCM 도구를 사용하여 코드를 커밋한다.

 

Jenkins는 해당 코드값들을 주기적으로 체크하거나 트리거를 유발시켜 코드를 빌드하거나 도커 컨테이너에 배포가 가능하다.

 

그럼 Jenkins에서는 Git을 그냥 사용할 수 있을까? 아니다. 관련 플러그인을 설치해줘야 한다.

 

 

Github 플러그인 설치

Jenkins 관리 -> Plugins -> Installed plugin 순서로 접속한 뒤 Github plugin을 확인하자.

또한, Jenkins 관리 -> Tools로 순서로 들어가 아래와 같이 설정을 해주자.

 

 

최종적으로 Plugin을 설치하고 아래 사진처럼 Jenkins 컨테이너에서 Git 명령어 사용이 가능하다면 성공이다.

 

 

 

자, 그렇다면 여기서 끝일까? 아니다. Git으로 코드를 불러올 수 있게는 되었지만 빌드 도구가 존재하지 않는다.

 

따라서, 빌드 자동화 도구인 Maven Integration 플러그인도 설치를 진행해줘야 한다.

 

 

 

Maven Integration 플러그인 설치

 

Jenkins 관리 -> Plugins -> Installed plugin 순서로 접속한 뒤 Maven plugin을 확인한 후 설치를 진행하자.

마찬가지로, Jenkins 관리 -> Tools 순서로 들어가 아래 사진과 같이 설정해주자.

 

 

여기서 Install automatically를 설정을 해줬는데 아마 Jenkins 자체에 Maven이 설치가 되어있지 않을 것이므로,

체크를 해주게 되면 자동적으로 MavenJenkins 컨테이너에 설치가 된다.

 

 

여기까지 하면, 우리는 Git으로부터 웹앱 코드를 다운받아 빌드를 할 준비가 되었다.

 

 

기초적인 빌드 과정

 

1. New Item -> Maven Project 생성

 

 

2. Git 레포로부터 코드 불러오기

여기서 Credential은 Private 레포 코드의 내용을 가져오려고 할 때 사용할 수 있다.

 

Branch Specifier는 코드를 가져올 브랜치를 명시하기 위해 사용된다.

 

 

3. Maven을 통한 빌드 설정

 

Maven은 pom.xml로부터 빌드를 진행한다.

  • clean: 기존에 빌드 파일이 있으면 지운다.
  • compile: 컴파일을 한다
  • package: 패키징을 한다.

 

4. 지금 빌드 시작

지금 빌드를 클릭한 뒤 SUCCESS가 출력되면 성공이다.

 

그 후, /var/jenkins_home/workspace/My-Second-Project/target 경로로 접근하였을 때 *.war이 생성되어 있으면 성공이다.

   

참고

이도원 강사님의 Jenkins 강의