1편. Jenkins 설치
2편. Jenkins 환경설정 << 현재 게시글
2편. GitHub연동 및 Http로 배포하기
3편. Https로 변경하기(feat. nginx)
4편. Blue-Green 무중단 배포
여기서 우리가 할 일은 4가지 입니다.
- Jenkins와 Github와 상호작용을 위한 Key를 등록하는 것
- Jenkins에서 Build를 위한 Plugin 설치
- Jenkins관리 - System에 GitHub에 Credential 정보 주입
- Jenkins관리 - Tools에 Node 설정
- Public 레포지토리의 경우 아래 과정을 생략해도 된다.
- 😂Private 레포지토리의 경우 1번 과정이 반드시 필요하다!!! 😂
1. 상호작용을 위한 Key 등록
1. GtiHub Personal Access Token 발급하기 - github로 가서 개인 프로필 - ⚙Settings 클릭
⚙Settings 를 클릭하면 프로필 페이지로 이동하게 됩니다.
다시 한번 <> Developer settting
을 다시 클릭한다면
🔑 Personal access tokens - Tokens(classic) 을 눌러 토큰을 생성해 봅시다.
우측 상단의 Generate new token - Generate new token (classic) 선택
토큰의 이름(Note)와 유효 기간(Expiration)을 수정한 뒤 위 3개의 체크박스를 체크, 이후 Generate Token을 버튼을 클릭하면 토큰이 생성됩니다.
자! 토큰이 정상적으로 발급 되었으니, Peronal access token을 Jenkins에 등록하러 가보도록 하겠습니다.
2. Jenkins에 Credential 등록하기
Jenkins 관리 - System Configration - Credentials 선택
Stored scoped to jenkins의 (global)을 클릭
2개의 방식으로 Credential Key를 등록해야합니다.
1. Secret text : 이벤트를 감지할 github를 연동할 때 사용
2. Username with password : Pipeline 스크립트에서 Repository를 Clone 받을 때사용
우선 Secret Text 등록을 해보겠습니다.
Secret Text : GitHub에서 발급한 Personal Access Token
ID : Github ID
Description : 해당 Credential에 대한 설명
과 같은 정보를 입력해 줍시다.
이어서 Username with password를 등록 해보겠습니다.
Username : GitHub Id
PassWord : Personal Access Token
ID : pipeline에서 호출할 토큰 이름(변수 형태로 불러옵니다.)
Description : Credential 설명
2. Plugin 설치
우선 Jenkins에 다음과 같은 플러그인을 설치해야합니다.
해당 작업을 통해 GitHub에서 Push, Merge등의 이벤트가 발생할 때 Jenkins의 Build Trigger를 발생시킵니다.
- GitHub Integration : 깃헙 파일을 CI하기 위한 플러그인
- NodeJS Plugin : npm install, npm run dev 등 node 프로젝트를 위한 플러그인
- Gerneral Webhook Trigger : 브랜치별 개별 적용을 위해 사용
Jenkins - Jenkins 관리 - Plugins 에서 Available Plugins에 접속해 위 3개의 플러그인을 설치하자
3. GitHub에 Credential 정보 주입
Jenkins - Jenkins 관리 - System에서 스크롤해 GitHub 메뉴를 찾아보자.
Credentials에서 1번에서 등록한 Secert text를 선택한 뒤 Test Connetion을 눌러 정상적으로 연결되는지 확인한다!
다음과 같은 이미지가 출력된다면 정상적으로 등록이 된것! 다음 Step으로 넘어가자
4. Node tool설치
Jenkins - Jenkins 관리 - Tools에서 스크롤해 NodeJS installations 메뉴를 찾아보자.
Add NodeJS 버튼을 클릭한 뒤 다음과 같은 설정을 따르자
여기까지 따라오느라 고생하셨습니다..
이제 3번째부터는 진짜 CI/CD이니 꼼꼼히 읽고 따라오시와요,..