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

The leading open source automation server, Jenkins provides hundreds of plugins to support building, deploying and automating any project.
자동화 서버의 open source 선두주자인 젠킨스를 적용해보려고 한다.
Jenkins User Documentation
Jenkins – an open source automation server which enables developers around the world to reliably build, test, and deploy their software
www.jenkins.io
1. What is Jenkins?
젠킨스는 무엇인가?
Jenkins is a self-contained, open source automation server which can be used to automate all sorts of tasks related to building, testing, and delivering or deploying software.
빌드, 테스트, 배포를 자동화 해주는 오픈소스 서버이다.
나의 프로젝트 개발 프로세스는
모듈 코드 개발/수정 -> git push -> jitpack 사이트 방문 -> 모듈 빌드 -> 배포완료 -> 모듈 다운로드
약간의 CD 환경은 되어있다. jitpack에서 빌드가 오래걸려 jenkins로 바꿔보려고 한다.
This documentation begins with a Guided Tour to help you get up and running with Jenkins and introduce you to Jenkins’s main feature, Pipeline.
Getting started with the Guided Tour
Jenkins – an open source automation server which enables developers around the world to reliably build, test, and deploy their software
www.jenkins.io
젠킨스가 처음이라면 guided tour 페이지를 통해 시작해보자.
젠킨스에는 '파이프라인'과 '블루오션'이라는 기능이 있는데 자동화 환경을 설정해주는 주요한 기능으로 보여진다.
2. 자바 설치
The following software installed:
- Java 17 or 21
젠킨스는 자바 17 또는 21 버전이 설치되어 있어야 한다.
내 서버는 자바가 있지만 터미널에 명령어가 나오지 않아. 다운받아 설치했다.
https://www.oracle.com/kr/java/technologies/downloads/#java21
Download the Latest Java LTS Free
Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts.
www.oracle.com

자바 21 버전을 받아보았다.
ARM64와 X64의 차이는 무엇? 둘은 CPU 아키텍처이다. ARM64는 저전력 X64는 고전력 고효율에 초점을 맞춘 것 같다.
• Apple Mx → Apple Silicon (ARM)
• Intel → Intel (x86_64)
내 서버는 Intel 맥미니 2018이다 X64를 받으면 된다.
설치 후 자바 버전 확인.
java -version
java version "21.0.6" 2025-01-21 LTS
Java(TM) SE Runtime Environment (build 21.0.6+8-LTS-188)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.6+8-LTS-188, mixed mode, sharing)
3. 젠킨스 실행
- Download Jenkins Generic Java package (.war)
- Open up a terminal in the download directory
- Run java -jar jenkins.war --httpPort=8080
- Browse to http://localhost:8080
- Follow the instructions to complete the installation
젠킨스 실행
Run java -jar jenkins.war --httpPort=8080
2025-03-28 07:11:58.451+0000 [id=36] INFO jenkins.model.Jenkins#<init>: Starting version 2.492.2
2025-03-28 07:11:58.508+0000 [id=46] INFO jenkins.InitReactorRunner$1#onAttained: Started initialization
2025-03-28 07:11:58.514+0000 [id=54] INFO jenkins.InitReactorRunner$1#onAttained: Listed all plugins
2025-03-28 07:11:59.134+0000 [id=50] INFO jenkins.InitReactorRunner$1#onAttained: Prepared all plugins
2025-03-28 07:11:59.137+0000 [id=50] INFO jenkins.InitReactorRunner$1#onAttained: Started all plugins
2025-03-28 07:11:59.138+0000 [id=52] INFO jenkins.InitReactorRunner$1#onAttained: Augmented all extensions
2025-03-28 07:11:59.364+0000 [id=55] INFO jenkins.InitReactorRunner$1#onAttained: System config loaded
2025-03-28 07:11:59.365+0000 [id=53] INFO jenkins.InitReactorRunner$1#onAttained: System config adapted
2025-03-28 07:11:59.365+0000 [id=45] INFO jenkins.InitReactorRunner$1#onAttained: Loaded all jobs
2025-03-28 07:11:59.366+0000 [id=45] INFO jenkins.InitReactorRunner$1#onAttained: Configuration for all jobs updated
2025-03-28 07:11:59.381+0000 [id=68] INFO hudson.util.Retrier#start: Attempt #1 to do the action check updates server
2025-03-28 07:11:59.726+0000 [id=47] INFO jenkins.install.SetupWizard#init:
*************************************************************
*************************************************************
*************************************************************
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:
73915c비밀번호fdb41
This may also be found at: /Users/sryang/.jenkins/secrets/initialAdminPassword
*************************************************************
*************************************************************
*************************************************************
2025-03-28 07:12:04.297+0000 [id=47] INFO jenkins.InitReactorRunner$1#onAttained: Completed initialization
2025-03-28 07:12:04.345+0000 [id=36] INFO hudson.lifecycle.Lifecycle#onReady: Jenkins is fully up and running
2025-03-28 07:12:04.625+0000 [id=68] INFO h.m.DownloadService$Downloadable#load: Obtained the updated data file for hudson.tasks.Maven.MavenInstaller
2025-03-28 07:12:04.625+0000 [id=68] INFO hudson.util.Retrier#start: Performed the action check updates server successfully at the attempt #1
젠킨스 실행 후 접속
웹 사이트에 권장 설치 절차가 있어 실행해주니 아래 같이 접속이 가능하였다.

설치해서 서비스를 실행하여 웹사이트에 접속하는 것 까지는 매우 쉬웠다.
