Jenkins 이란?
jenkins 서버는 open source CI Tool 이다.
지난번에는
project(maven) -> tomcat(WAS) :build를 통해서 패키징하고 자동으로 배포되는 환경 으로 만듦
이번에는
1. 프로젝트는 팀단위(branch)를 통해서 통합(merge)되는 프로젝트를 진행
2. 통합되어 있는 프로젝트인 git의 데이터를 통해서 통합,배포하는게 필요함
3. jenkins가 파일을 git(branch:main)에서 내려받아서 maven을 통해서 build하고 서버(WAS)에 배포
***git 관리자가 merge작업 후 자동으로 webhooks를 통해서 jenkins에게 통합되었다고 notification하게 되면 자동으로 배포
프로젝트 수정후 Git에 Push했을 때 Git에서 hook으로 Jenkins로 전달하고 자동으로 배포되도록
1. GitBash 로 jenkins ssh 키 생성
ssh-keygen -t rsa -f jenkins
2. jenkins configure에서 Add Credentials
-> SSH Username with private key (여기에 git bash에서 생성한 key를 입력)
3. Github 사이트로 이동 -> Settings -> Deploy Keys
위에 생성한 키랑 똑같은 Key를 적음 ( Git-> Jenkins로 신호를 보낼 때 쓰는듯?)
4. ngrok 접속해서 Token 확인 후에
C: -> VirtualServer에서 ngrok 실행 후
ngrok http 8080 --authtoken=ngrok 토큰값 입력
5. Endpoints 에서 해당 링크누르면 젠킨스로 이동하는지 확인 (이동 됐다면 admin admin 쳐서 로그인)
6. 깃으로 이동 Settings -> Webhooks -> Payload URL에서
위에 접속된 링크 + /github-webhook/ 작성 (뒤에 /붙이는거 확인)
7. 프로젝트가서 jsp 수정한다음 Team-> 싱크로나이즈 -> 푸쉬 하면
자동으로 jenkins에서 배포하는지 확인
구디아카데미 후기/ 국비지원IT개발자 취업 / 전민균 강사님/