본문 바로가기

백엔드

Docker Jenkins와 깃허브 연결

1. 깃허브 계정 연결

 

깃허브로 들어가서 Settings -> Developer settings

 

 

없다면 generate new token을 눌러줘도 되고

기존의 토큰을 수정해도 된다.

 

 

범위의 경우

repo와 repo_hook을 체크해준다.

 

새로 만들었다면 토큰이 잘 나온다.

이 부분을 꼭 어디에 기록해놓자..!!

 

젠킨스로 돌아가서

시스템 설정을 눌러준다.

 

 

Github Server 부분을 찾아

URL을 넣고 Credentials를 Add 해준다.

 

 

kind를 secret text로 해주고

secret에 발급받았던 깃허브 토큰을 넣어주고 add 하면 된다.

(username, password로 해도 상관 없을 듯 하다)

 

 

추가된 Secret text를 포커스해주고

Test connection해준다.

 

 

API URL은 그대로 하고 하면 된다

내 repository로 하는 줄 알고 credentials 설정 후 계속 test connection하면서

삽질하고 있었다ㅎ

 

이제 끝!!

저장해준다.

 

 

2. 레퍼지토리 프로젝트 연동

 

젠킨스로 들어가 새로운 Item을 추가해준다.

 

 

freestyle project로 선택한다.

 

 

소스 코드 관리에서

올려놨던 레퍼지토리를 등록한다.

 

credentials는 설정되어 있길래 그냥 했는데,

안 되어 있는 분들은 위에 있는 Add를 눌러

위에 있던 Credentials 과정처럼 진행하면 됩니다.

 

 

그 다음, 빌드 유발로 들어가서

원하는 부분을 체크(Github hook trigger)

 

 

빌드의 경우,

Execute shell로 빌드해보고자 한다.

 

npm install,

npm run setup만 해줬다!

 

 

Nodejs를 사용하는 젠킨스 빌드라면

빌드 환경에서 Node, NPM을 꼭...선택해주자...

(ㅠㅠ)

 

3. ngrok을 이용해서 도메인 설정

 

jenkins를 ip 주소로 접속하고 있었던 사람이라면 상관 없지만

나처럼 localhost:[port번호]로 접속하고 있었던 사람은 이 과정을 따라해보자!

 

https://ngrok.com/

 

ngrok - secure introspectable tunnels to localhost

@Botto ngrok, probably the best tool I have started to use for my webwork since firebug also great support

ngrok.com

 

ngrok을 다운로드 받았다면

/usr/local/bin으로 이동시켜준다.

 

 

그럼 이제 터미널에서

ngrok 명령어를 사용할 수 있다.

 

 

젠킨스에서 사용했던 포트번호를 쳐준다.

 

ngrok http 55003

 

 

그럼 주소가 잘 나온다.

 

4. 설정해주었던 Github hook trigger

 

위에서 설정해주었던 Github hook trigger 설정을 해준다.

 

 

ngrok 과정에서 얻었던 ngrok.iof를 payload URL에 넣어주고,

Content type를 application/json으로 바꿔준다.

 

 

 

addHook까지 끝!

 

 

출처:

https://5equal0.tistory.com/entry/Container-Jenkins-2-Jenkins%EC%97%90-Github-%EC%97%B0%EB%8F%99%ED%95%98%EA%B8%B0

 

[Docker Container Jenkins - 2] 젠킨스(Jenkins)에 깃헙(Github) 연동하기

 Contents 1. Github token 설정 2. Github 연동할 Jenkins 프로젝트 생성 3. Github Webhook 설정 4. Github-Jenkins 연동 확인 Jenkins에 Github 레포지토리를 연동하여, Github 레포지토리에 변경된 코드가 pu..

5equal0.tistory.com

https://jojoldu.tistory.com/139

 

docker를 이용한 CI 구축 연습하기 (젠킨스, 슬랙)

안녕하세요? 이번 시간엔 도커로 CI 구축 연습하기 (젠킨스, slack) 예제를 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을

jojoldu.tistory.com

https://soojae.tistory.com/26

 

[MacOS][Docker] Jenkins - 2. Jenkins 설정

1. Plugin 필요한 플러그인을 설치해봅시다. 저는 빌드할 때 npm 명령어를 사용해야 해서 NodeJS 플러그인을 설치하겠습니다. Jenkins 관리 - 플러그인 관리를 클릭합니다. 그 후에 설치 가능 탭을 누르

soojae.tistory.com

 

반응형