Wii Pointer #1 Tilt Normal
본문 바로가기
📁 𝐭𝐨𝐨𝐥&𝐯𝐢𝐫𝐭𝐮𝐚𝐥𝐌𝐚𝐜𝐡𝐢𝐧𝐞/Jenkins

What is the Jenkins?

by 개발자_후니 2023. 2. 18.
728x90
반응형

목차

  • 들어가기전에...
  • CICD란?
  • CICD에서의 빌드란?
  • 따라서 Jenkins란?
  • Jenkins 다운로드 및 설치 방법
  • Jenkins 사용 방법

Jenkins를 알아보기 전에...

들어가기전에...

서버 어플리케이션에 기능을 추가 하려면 개발자가 개발자 노트북에서 개발을 완료 하고 테스트까지 한 다음에 이상이 없으면 사용자가 사용할 수 있게 수정된 내용을 서버에 반영해야 합니다.

[서버에 반영을 하는 것을 '배포 Deploy'라고 하고 배포 하기 위한 준비 과정을 '빌드 Build'라고 합니다.] =>> CICD


CICD란?

 

지속적 통합(CI, Continuous Integration)

빌드/테스트 자동화 과정으로, 개발자를 위한 자동화 프로세스인 지속적인 통합을 의미합니다.
애플리케이션에 대한 새로운 코드 변경 사항이 정기적으로 빌드 및 테스트되어 공유 리포지토리에 통화되기 때문에 여러 명의 개발자가 동시에 작업을 하더라도 충돌하지 않습니다.

지속적 배포(CD, Continuous Delivery)

배포 자동화 과정으로, 지속적인 서비스 제공 및 배포를 의미합니다.
코드 변경 사항의 병합~프로덕션에 적합한 빌드 제공에 이르는 모든 단계로, 테스트 자동화와 코드 릴리스 자동화가 포함됩니다.

 


CICD에서의 빌드 Build란?

빌드는 서버에 올릴 수 있는 상태로 만드는 것을 빌드라고 합니다.

서버에 올려서 사용자가 사용 할 수 있게 하는 것은 배포 (Deploy)라고 합니다.

예를 들어 SpringBoot 어플리케이션을 쿠버네티스에 배포하는 경우 먼저 Maven이나 Gradle로 빌드를 해서 .jar이나 .war를 만든 후 Docker빌드를 해서 Docker Image를 만듭니다.

 

그 후에 k8s에서 .yml파일에 이미지 버젼이 바뀐것을 반영하게 됩니다.

 

 

 


 

그래서 Jenkins 는...

따라서 Jenkins란?

위에서 이야기한 빌드 Build를 자동화 해주는 툴입니다.

 

Jenkins는 빌드를 자동화 시키기 위해 사용합니다.

 

대표적인 기능은

1. Dashboard 대쉬보드 제공

여러가지 배포 작업의 상황을 모니터링 할 수 있습니다

 

2. 배포 Script 스크립트 실행기능

배포 스크립트를 개발자 로컬에서도 실행 할 수 있는데 젠킨스라는 프로그램을 띄워놓으면 스케쥴링을 해줍니다

 

3. 다양한 Plugin 플러그인

빌드를 하는 환경도 다양하고 빌드를 할 때 바꿔 주어야 하는 옵션도 다양하고 각각 개발 환경과 개발한 언어도 다 다릅니다. 이런 것들을 커버하기 위해 젠킨스는 다양한 플러그인을 제공 합니다.

 

 


 

 


 

Jenkins 다운로드 및 설치 방법

 

 

 

 

 

 

 

 

 

 

 

 


 

Jenkins 사용 방법

 

 

 

 

 

 

 

 

 

728x90
반응형