본문 바로가기

Study/Server

[Jenkins] (1) Jenkins란? Mac 로컬에 설치하기

Jenkins란?

젠킨스에 대해 알아보기 전, 먼저 CI/CD의 개념을 알아야 한다.

 

CI/CD

CI(Continuous Integration)는 곧 지속적 통합, CD(Continuous Deployment)는 곧 지속적 배포라는 의미의 단어이다.

개발자들이 동시에 작업한 코드 변경 사항을 통합(CI) 및 배포(CD)하는 프로세스를 의미한다. 

 

Jenkins

CI/CD를 위한 오픈 소스 도구로, 소프트웨어 개발 생명주기를 자동화한다.

즉, 코드 변경 작업이 있을 때마다 빌드 > 테스트 > 배포 까지의 과정을 자동으로 수행하기 때문에 개발자들이 별도로 관리하지 않아도 된다. 또한 다양한 플러그인을 지원하기 때문에 필요에 맞게 CI/CD 환경을 확장할 수 있다. 

 

Jenkins는 Master/Slave 구조로 동작한다. 

Master는 Controller라고 불리며, Slave를 관리하고 작업 스케쥴링과 모니터링을 포함해 다양한 작업을 관리한다.

Slave는 Agent라고 불리며, 실제 파이프라인 작업을 수행한다. 또한 다양한 환경에서 작동하며 작업을 분산시켜 부하를 감소시킨다. 

 

동작 방법

https://wlsdn3004.tistory.com/63
https://wlsdn3004.tistory.com/63

 

- SCM (Source Code Management)

코드가 보관되어 있는 Git 저장소에 코드 변경사항을 감지해 자동으로 파이프라인을 수행할 수 있다. Git 저장소에는 소스 코드 외에 Jenkins 스크립트 실행에 필요한 Jenkinsfile과 Kubernetes 배포에 필요한 Helm Chart와 같은 파일들도 보관될 수 있다.

 

- CI (지속적 통합)

파이프라인이 실행되면 Agent를 통해 파이프라인 스크립트에 정의된 작업이 실행된다. 이때 소스 코드 빌드, 코드 검증 테스트, 도커 이미지 빌드, 도커 이미지 검증 등 여러 작업이 순차적으로 진행된다.

 

- CD (지속적 배포)

파이프라인에서 정의한 배포 작업에 따라 애플리케이션은 Kubernetes 환경에 배포된다. 이 배포는 Jenkins를 통해 수행될 수도 있고, Kubernetes 환경에서 널리 사용되는 ArgoCD와 같은 도구를 활용해 수행될 수도 있다.

 

 

 


 

MacOS에서 Jenkins 설치하기

아래 Jenkins 공식 문서를 참고해 설치할 것이다. 

 

https://www.jenkins.io/doc/book/installing/macos/

 

macOS

Jenkins – an open source automation server which enables developers around the world to reliably build, test, and deploy their software

www.jenkins.io

 

 

 

1. Homebrew 로 설치하기

아래 명령어를 입력해 젠킨스를 설치해준다. 대략 1~2분 정도 소요된 것 같다. 

$ brew install jenkins-lts

 

Jenkins 설치 완료

 

 

2. Jenkins 재실행

$ brew services restart jenkins

재실행 완료

 

 

3. 브라우저 접속

웹 브라우저에서 http://localhost:8080 주소에 접속하면 아래와 같은 페이지가 나온다. 

터미널에서 빨간 색 글씨로 적힌 경로로 들어가보면 초기 비밀번호를 확인할 수 있다.

localhost:8080 접속 화면
초기 비밀번호 확인

 

 

4. 플러그인 설치

3번에서 확인한 비밀번호를 입력하면 추천 Plugin을 설치할 수 있다.

Jenkins Plugins 설치 화면

 

 

5. 관리자 계정 생성

초기 관리자 계정을 생성하는데, 이 때 암호는 초기에 설정된 암호를 그대로 사용해야 한다(수정 불가).

 

 

6. 젠킨스 주소 입력

나는 기본 주소로 그대로 저장했다.

 

7. 설치 완료!

반응형