이것저것 해보기🌼

Docker Jenkins 버전 jdk 17로 바꾸기 (jenkins/jenkins:lts-jdk17) 본문

AWS

Docker Jenkins 버전 jdk 17로 바꾸기 (jenkins/jenkins:lts-jdk17)

realtree 2024. 4. 30. 16:40

 

 

1. Docker로 Jenkins 만들기

 

AWS 환경에 EC2 (젠킨스 전용)을 하나 만들었다.

그리고 EC2 에 접속해서 Docker 설치 및 Jenkins 컨테이너를 추가해주었다.

( 해당 과정은 아래 포스팅을 참고 )

https://realtree.tistory.com/59

 

EC2 환경에서 Docker를 이용해 Jenkins 설치하기

1. EC2 시작하기AWS EC2의 경우에는 아래 포스팅과 동일한 설정으로 추가해주었다.https://bcp0109.tistory.com/356<figure id="og_1714377961717" contenteditable="false" data-ke-type="opengraph" data-ke-align="alig..

realtree.tistory.com

 

2. 젠킨스 jdk22 -> jdk17로 바꾸기

이번 프로젝트에서 Java는 17버전을 사용할 예정인데, 모르고 jenkins:lts 로 그냥 설치를 해버렸더니 jdk가 22버전으로 설치가 된 바람에.. gradle 빌드가 17버전으로 된다.

 

젠킨스 Tools에서 JDK를 추가로 17버전 add 해주어야하는데

 

이렇게 할려고 보니 자동설치 플러그인도 뭔가 deprecated 되고 있고 zip 파일로 올리려니 EC2 사양이 x86이라서 맞는 파일도 찾기 힘들었다.

 

그래서 그냥 빠르게 jenkins  jdk17 버전 이미지를 새로 받아서 그것을 실행해주었다.

참고 - http://hitec2022.github.io/docs/SNIPPET/jenkins%20docker%20upgrade.html

 

Docker로 실행한 Jenkins 버전 업그레이드

Hitec 가 해보는 개발

hitec2022.github.io

 

//기존 컨테이너 지우기
$docker ps -a

CONTAINER ID   IMAGE          COMMAND                  CREATED        STATUS                       PORTS     NAMES
39036d181010   4e586344183a   "/usr/bin/tini -- /u…"   24 hours ago   Exited (143) 7 minutes ago             jenkins

$docker rm jenkins

//기존 이미지 지우기
$docker images
REPOSITORY        TAG         IMAGE ID       CREATED       SIZE
jenkins/jenkins   lts         4e586344183a   12 days ago   469MB

$docker rmi  4e586344183a -f

//이미지 새로 받기
$docker pull jenkins/jenkins:lts-jdk17

//다시 컨테이너 실행
$sudo docker run -d -p 8080:8080 -v /jenkins:/var/jenkins_home --name jenkins -u root jenkins/jenkins:lts-jdk17

 

마운트 경로를 동일하게 사용하기 때문에, admin 계정 설정과 플러그인 설치등을 새롭게 할 필요가 없이

기존에 만들어둔 젠킨스가 그대로 구동된다.

 

 

 

 

+ 추가 (2024.04.30)

다시 돌려보니 그래도 jdk 22 버전으로 컴파일이 된다.

 

뭔가 다른 설정이 있나 찾아봐야겠다..

어쨋든 jenkins 이미지를 다시 받아도 문제없이 workspace에 있던 아이템들이 돌아가는것을 확인했다.

그리고 그냥 lts 버전으로 받았을때는 플러그인 에러가 엄청나게 많았는데, jdk17로 내리니까 모두 없어졌다.

어찌됐건 이미지는 jdk 17 로 받는것을 추천한다..