[Jenkins] 기본 설정 기록
1. Spring boot 3 버전을 써 볼 예정이기 때문에, 먼저 기존에 설치한 openjdk 11버전을 17버전으로 올린다.
(Spring boot3 버전은 Java 17 이후 버전과 호환)
아래에 기록.
[Linux] CentOS 8 - OpenJDK 17 설치
jdk 소스를 받아 경로를 잡아주는 방식으로 설치 1. os와 맞는 소스 다운로드 - linux 64 bit cd /home/opc wget https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz 2. j
bbyuck.tistory.com
2. Jenkins jdk 설정
1번에서 설치한 jdk를 사용할 수 있도록 jenkins 설정한다.
Jenkins 관리 > Tools > JDK Installations 에서
아래와 같이 설정한다.
Name : 임의의 name
JAVA_HOME : 설치된 java의 루트 디렉터리 위에서 설치한 jdk로 잡아준다.
install automatically 체크박스는 해제해준다.
3. github credential 추가
github과 연동할 예정이므로, jenkins에서 github repo에 접근할 수 있게 credential을 추가해준다.
3.1. github access token 발급
[Jenkins] github access token 발급
jenkins에서 github repo에 접근할 때 사용하기위해 github access token을 발급한다. 우측 상단의 프로필을 클릭 해 Settings > Developer settings > Personal Access tokens > Tokens (classic) > Generate new token 을 통해 토큰을
bbyuck.tistory.com
3.2. credential 추가
[Jenkins] jenkins credential 추가
Jenkins에서 github repo에 접근할 수 있도록 credential을 추가해준다. 1. Jenkins 관리 > Credentials > System > Global credentials 메뉴까지 들어와 Add Credential 클릭 2. credential 정보 입력 Kind : Username with password Scope :
bbyuck.tistory.com
3.3. jenkins 환경 등록
Jenkins 관리 > System 메뉴에서 아래로 스크롤 후 Github 탭에서 Add Github Server 버튼으로 Github Server 추가 후
위 과정에서 생성한 Credential을 등록한다.
Name : 임의의 Name
API URL : https://api.github.com
Credentials : 3.2에서 생성한 Credential 선택
Test connection을 눌러 아래와 같은 문구가 나오면 성공
4. github webhook 등록
github repo에 커밋이 푸시될 때, jenkins 서버로 webhook을 보낼 수 있도록 github에서 webhook을 등록한다.
github 접속 > 프로젝트 repo > Settings > Webhooks 에서 Add webhook 버튼으로 webhook을 추가한다.
Payload URL : ${ jenkins-url }/github-webhook/
Content type : application/json
입력 후 Add webhook
5. 프로젝트 추가
프로젝트를 추가할 때, git 서버를 추가하고 웹 훅을 받을 수 있도록 설정한다.
5.1. 프로젝트 좌측에 github 프로젝트 link를 추가한다.
5.2. 타겟 branch를 master에서 main으로 변경하고, GitHub hook trigger for GITScm polling을 체크해 webhook을 받았을 때 build를 실행하도록 한다.
5.3. 이후에 배포를 docker 컨테이너로 변경할 예정이므로 build도 변경되겠지만 일단 gradlew 빌드로 젠킨스 설정이 잘 되었는지 확인한다.
성공
6. 빌드 설정 및 배포 설정
23.07.30 기준으로 웹 훅을 받아 자동 빌드 되는 것 까지는 테스트 하였다.
배포는 마찬가지로 Oracle Cloud에 도커 컨테이너로 배포할 예정
이번주까지 개발 환경 설정을 마무리하고 본격적으로 개발을 진행할 예정
돌아오는 주 주말에 포스팅 예정
6. Security 설정
나만 사용할거긴 하지만 로그인해야만 사용할 수 있게,,
Jenkins 관리 > Security