젠킨스 > Jenkins 관리 > 플러그인 관리

젠킨스에서 플러그인 관리 화면으로 진입한다.

 

젠킨스 > Jenkins 관리 > 플러그인 관리

git과 github관련 플러그인의 설치를 확인한다. 설치되어 있지 않다면 설치해야 한다.

 

 

GitHub 계정별 연동

github으로 가자.

 

github > Settings

github > Settings > Developer setting

Developer setting 항목을 찾는다.

 

github > Settings > Developer settings > Personal access tokens

Personal acceess tokens 항목에서 계정의 토큰을 생성 할 수 있다.

Generate new token 버튼으로 토큰을 생성한다.

위 캡쳐에서처럼 admin:org(레파지토리 읽기/쓰기), admin:repo_hook(레파지토리 훅 권한) -깃헙에 push가 일어나면 자동으로 빌드되어 컨테이너를 실행할 수 있도록-, repo(레파지토리 접근) 스콥으로 진행하겠다.

 

젠킨스 > Jenkins 관리 > 환경설정

이후 Jenkins 환경설정에서 Add GitHub Server를 눌러주자.

젠킨스 > Jenkins 관리 > 환경설정

Add버튼으로 Credentials를 등록한다.

GitHub > GitHub Server > Add Credentials

Kind - Secret text

Secret - 토큰

을 입력해주면 된다.

Jenkins > Jenkins 관리 > 환경설정

Test connection버튼으로 연결을 확인하고 환경설정 가장 아래의 저장 또는 Apply버튼으로 세팅을 저장한다.

(사실 Public Repository로 진행한다면 이 과정은 필요없다)

 

 

SSH KEY연동방식

젠킨스와 gitHub 연동시 계정을 통째로 인증하는 방식은 보안상 위험 할 수 있다.

 

따라서 SSH 연동방식또한 소개한다.

 

간단하게, 더 귀찮고 더 보안이 좋은 방식이다.

 

cd /var/jenkins_home
mkdir .ssh
ssh-keygen -t rsa -f /var/jenkins_home/.ssh/github_rsa_ssh_key

먼저 SSH 키를 생성한다.

키의 이름은 github_rsa_ssh_key 으로 하겠다.

 

 

GitHub > Repository > Settings > Deploy keys > Add deploy key

깃헙 레파지토리에서 Setting > Deploy keys > Add deploy key항목을 찾아낸다.

 

GitHub > Repository > Settings > Deploy keys > Add deploy key

방금 생성한 ssh key 중 확장자가 .pub으로 되어있는 public key를 등록해준다.

 

SCM: Git > Repositories > Credentials

이후 Credentials를 등록하는 화면에서 위와 같이 입력한다.

Private Key는 위에서 생성한 SSH키 중 private key를 입력하면 된다.

 

SCM: Git > Repositories

Repository URL은 위와 같이 SSH방식으로 적어야 한다

 

이상 GitHub과 Jenkins를 연동하는 두가지 방법이다.

728x90
반응형

+ Recent posts