Server
[Jenkins] Linux에 jenkins 설치 2
devhyen
2024. 7. 29. 14:44
기존 java가 8버전으로 설치되어있어서 이전 버전 jenkins로 설치는 완료했으나,
플러그인 호환문제가 발생하였다.
JAVA_HOME을 바꾸지 않고 jenkins에서만 java 17버전을 설정해서 사용하는 방법으로 재설치 하였다.
기존 jenkins 삭제
# jenkins 서버 중지
systemctl stop jenkins
# 서비스 제거
systemctl disable jenkins
# jenkins 삭제
yum remove jenkins
# 관련 파일 모두 삭제
rm /etc/init.d/jenkins
rm -rf /var/lib/jenkins
rm -rf /etc/yum.repos.d/jenkins
Open JDK 17 설치
CentOS7 에서는 yum 으로는 open JDK 11 까지만 지원이 되기 때문에 아래의 방법으로 설치해야 한다.
# 압축파일 다운로드
cd /tmp
### Linux 64-bit ###
wget https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz
# 압축 해제
tar -xvf openjdk-17.0.2_linux-x64_bin.tar.gz
# 폴더 이동
mv jdk-17.0.2/ /opt/jdk-17/
Jenkins 설치
sudo wget -O /etc/yum.repos.d/jenkins.repo \
https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
sudo yum upgrade
# Add required dependencies for the jenkins package
sudo yum install fontconfig java-17-openjdk
sudo yum install jenkins
sudo systemctl daemon-reload
서비스 파일 수정
open JDK 17을 사용ㄴ하도록 Jenkins 서비스 파일을 수정해야한다.
경로는 일반적으로
/etc/systemd/system/jenkins.service
또는
/usr/lib/systemd/system/jenkins.service 에 위치한다.
vi 명령어로 해당 파일에 접근한 뒤
[Unit]
Description=Jenkins Continuous Integration Server
After=network.target
[Service]
Environment="JAVA_HOME=/opt/jdk-17"
Environment="JENKINS_HOME=/var/lib/jenkins"
ExecStart=/usr/bin/java -Djava.awt.headless=true -jar /usr/lib/jenkins/jenkins.war
User=jenkins
Group=jenkins
Restart=always
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
위 코드처럼 JAVA_HOME 문장을 추가해주고 저장한다.
jenkins 시작
sudo systemctl daemon-reload
sudo systemctl enable jenkins
sudo systemctl start jenkins
sudo systemctl status jenkins