Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- dbeaver
- ubuntu
- 포트포워딩 안될때
- 백준1946
- SpringApplication
- 배열빈도수
- springboot
- 도커
- 브로드캐스트
- Decapsulation
- 리눅스환경
- javax.management.instancenotfoundexception: org.springframework.boot:type=admin
- 네트워크모델
- wan
- docker
- 포트포워딩
- 우분투
- 백준
- jmx
- name=springapplication
- 모래시계출력
- 오름차순
- 도커권한설정
- 유니캐스트
- 디비버
- 리눅스계열
- instancenotfoundexception
- 배열최소값최대값
- 페이로드
- 배열복사
Archives
- Today
- Total
다잘하고싶어
Jenkins에 GitHub 연동하기 본문
Jenkins에 GitHub 연동하기
먼저 깃헙 토큰을 발급받아온다!
지금부터는 그 이후 단계!
- Jenkins 관리 → Manage Credentials → System → Global credentials → Add Credentials
Gradle 설정
해당 프로젝트를 그래들로 빌드할 것이므로 그래들 설정해주기
먼저 필요한 플러그인들을 설치해준다.
- Jenkins 관리 → 플러그인 관리 → 설치가능 탭 → 필터 검색
- Gradle Plugin : 프로젝트를 Gradle로 빌드할 수 있는 플러그인
- Post build task : 빌드 로그를 판단해 batch/shell을 실행하는 플러그인
Jenkins 관리 → Global Tool Configuration → Gradle → Add Gradle
- 맞는 Gradle 버전을 설정
- Gradle 버전 확인 : 인텔리제이에서 project - wrapper - gradle-wrapper.properties 파일에서 확인하기
프로젝트 추가
- 대시보드에서 + 새로운 Item 클릭
일단은 간단한 작업만 수행할 것이므로, freestyle project 선택.
파이프라인을 사용한 작업을 보고싶다면 아래의 포스팅 참고하기
https://22chaechae.tistory.com/25
1. 소스코드 관리
- Git으로 설정
- 연동하고자 하는 GitHub Repository URL 입력
- Credentials 은 이전에 등록했던 깃헙 아이디와 토큰을 가지고 있는 것을 선택
2. 빌드 유발
- GitHub Repo에 push하면 웹훅이 해당 젠킨스로 내용 전달해주는 것을 트리거로 빌드할 수 있도록 하는 설정
- GitHub hook trigger for GITScm polling 활성화
지금까지 설정한대로라면 젠킨스는 깃헙을 클론해서 변경사항을 인식해주는 역할만 한다.
따라서 그 이후 자동으로 빌드해주고, 배포해주는 등의 처리는 따로 설정해주어야 한다!
위의 설정은 변경사항을 인식해서 새로 빌드해줄 수 있도록 트리거를 설정해주는 과정이다.
3. 빌드
- Gradle로 빌드 할 것이므로 Invoke Gradle script로 추가
- Gradle Version은 위에서 설정한 Gradle로 설정
- bootJar : 즉, Gradle이 SpringBoot 빌드하는 명령
여기서 bootJar 란?
이전의 프로젝트 배포 관련 포스팅에서 설명했듯이,
참고 포스팅 https://22chaechae.tistory.com/19
그래들에서 build 를 클릭하면 gradle 이 자동으로 빌드해서 자르파일을 생성해준다.
이때 build 를 클릭하면 jar파일과 plain.jar 파일을 생성해주고 (두 개의 차이점도 위의 참고포스팅에 나와있음)
그냥 bootJar를 클릭하면 jar파일만을 생성해준다.
따라서 우리는 gradle 상의 springboot 를 빌드하는 명령이 자동으로 내려지도록 설정해두는 것이다.
따라서 마저 설정을 진행하면
4. 빌드 후 조치
- 이제 push → clone 후 build 까지는 완료 되었으니, 이미 실행 중인 프로젝트를 종료하고, 해당 빌드된 .jar파일을 실행시켜야한다.
- Log text : BUILD SUCCESS
- Script : 이미 실행중인 프로젝트 종료하는 스크립트와 실행시키는 스크립트
# 8080포트에서 실행 중인 프로세스를 KILL 하는 명령어
fuser -k -n tcp 8080
# 해당 .jar 파일을 백그라운드에서 자바로 실행시키는 명령어
nohup java -jar /var/lib/jenkins/workspace/{현재 만들고 있는 프로젝트명}/build/libs/{빌드된 .jar파일명} &
- /var/lib/jenkins/workspace/{현재 만들고 있는 프로젝트명} 이 디렉토리는 현재 만들고 있는 젠킨스 프로젝트를 만들면 만들어질 것이다.
- /var/lib/jenkins/workspace/{현재 만들고 있는 프로젝트명}/build/libs/{빌드된 .jar파일명} 이 위치의 .jar파일은 bootJar가 실행되면 만들어질 것이다.
저장하면 완료된다.
'프로젝트회고' 카테고리의 다른 글
배포과정에서 포트번호 설정 이해하기 (0) | 2022.10.26 |
---|---|
SSH 개념 이해 / ec2에 자바, 젠킨스 설치하기. (0) | 2022.10.25 |
ec2, rds 이해하기 (0) | 2022.10.20 |
[Spring프로젝트]AWS EC2를 사용한 배포 (0) | 2022.10.12 |