Jenkins 설치
Jenkins Ubuntu 설치 가이드
1. Java 설치
(1)
sudo apt update
apt의 패키지 리스트를 최신 상태로 업데이트하는 과정이다.
(2)
sudo apt install fontconfig openjdk-17-jdk
fontconfig
- 폰트 렌더링과 관련된 패키지 (Jenkins UI 관련)
openjdk-21-jdk
- JDK(Java Development Kit) 전체 패키지를 설치한다.
- JDK에는
javac, jmod, jlink 등 Java 개발 도구가 포함되어 있다.
- Jenkins 빌드 과정에서 Gradle을 실행하거나 Java 코드를 빌드하려면 반드시 JDK가 필요하다.
2. Jenkins 설치
(1)
sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \
https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key
wget 명령어를 사용해서 Jenkins의 GPG 서명 키를 다운로드하는 과정이다.
- 이 키는 패키지의 무결성을 검증하는 데 사용되며, 보안적으로 패키지가 신뢰할 수 있는지를 확인하는 역할을 한다.
- 다운로드한 키를
/usr/share/keyrings/jenkins-keyring.asc 파일로 저장한다.
(2)
echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc]" \
https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
/etc/apt/sources.list.d/jenkins.list > /dev/null
echo 명령어를 사용해서 Jenkins 패키지 저장소 (Repository)를 시스템에 추가하는 과정이다.
- 저장소 주소:
https://pkg.jenkins.io/debian-stable
/etc/apt/sources.list.d/jenkins.list 파일에 저장해서, apt update 시 이 저장소를 검색하도록 한다.
(3)
sudo apt-get update
apt-get update 명령어는 패키지 목록을 새로고침하는 역할을 한다.
- 위에서 추가한 Jenkins 저장소를 포함한 최신 패키지 목록을 가져오게 돼.
(4)
sudo apt-get install jenkins
- Jenkins를 설치하는 명령어
apt-get install jenkins 하면, systemd 서비스로 자동 등록되므로 sudo systemctl start jenkins 하면 바로 실행할 수 있다.
3. Jenkins를 Docker 그룹에 추가
(1) 현재 사용자 목록 확인 (Jenkins가 속한 그룹 확인)
id jenkins
(2) Jenkins를 docker 그룹에 추가
sudo usermod -aG docker jenkins
(3) 변경된 권한을 적용하려면 Jenkins 서비스 다시 시작
sudo systemctl restart jenkins
(4) 적용이 잘 되었는지 확인
id jenkins
Jenkins 설치 결과
- Jenkins를 시스템 서비스(데몬)로 설정하고 부팅 시 자동 실행되도록 설정한다.
- Jenkins 서비스는 'jenkins'라는 시스템 사용자 계정으로 실행된다.
- Jenkins는 기본적으로 8080 포트에서 실행된다.
* 포트 변경 방법
/etc/default/jenkins 파일을 수정
sudo vi /etc/default/jenkins 명령어 실행
HTTP_PORT=8080을 HTTP_PORT=8081로 변경
/lib/systemd/system/jenkins.service 파일을 수정
sudo vi /lib/systemd/system/jenkins.service 명령어 실행
Environment="JENKINS_PORT=8080"을 Environment="JENKINS_PORT=8081"로 변경
- systemd 및 Jenkins 재시작
sudo systemctl daemon-reload 명령어 실행
sudo systemctl stop jenkins 명령어 실행
sudo systemctl start jenkins 명령어 실행