[Spring/Project] CI관련 학습
by
첫번째로 배포자동화에 대한 학습을 한다.
아직 서비스되는 프로젝트를 유지보수한 경험이 전혀 없다. 내가 지금껏 해왔던 방식은 로컬에서 깃허브에 업로드하면, 서버에 들어가서 푸쉬받아서 다시 빌드해서 서버를 재실행 하는 방식이었다. 한번 이 복잡하고 힘든방식에서 벗어나보자.
하지만..
도커는 알겠는데.. 도커로 배포를 한다고..??
젠킨스를 이용하면 무중단 배포를 할수 있다고..?
nginx는 정적 데이터 배포에 적합하다고..?
…
그래서 배포자동화를 어떻게 하는건데..??
배포 자동화에 대한 많은 기술, 많은 정보들로 인해 뭐가 뭔지 하나도 모르는 상황에 처하게 되었다.
먼저 각자에 대한 차근차근 학습을 진행하기로 한다.
학습내용
젠킨스
- jojoldu님의 docker를 이용한 CI 구축 연습하기 (젠킨스, 슬랙)
- 젠킨스 기본사용법과, 깃허브 연동법을 학습 할 수 있다.
도커
- subicura님의 도커를 이용한 웹서비스 무중단 배포하기
- 도커 이미지를 통한 배포방법, nginx의 로드밸런싱 기능
- 무중단 배포와 배포자동화의 개념
- 젠킨스 파이프라인 사용하여 자동 배포환경 만들어 보기!
Nginx
- Nginx의 개념은 아파치와 같은 서버라고 함.
- 스프링부트로 웹 서비스 출시하기 - 7. Nginx를 활용한 무중단 배포 구축하기
CI/CD
-
- CI, CD 의 개념 및 흐름 학습
- Jbee님의 DevOps란 무엇이며, CI는 무엇인가?
- Tae Hyun Kim, DevOps? DevOps개발자? 북미에서의 6년
- 조대협님의 배포 자동화 설명
실습
-
jojoldu 님의 글의 흐름 순서대로 기본 spring의 배포부터 차근차근 적용해 보기로 하였다.
목표
필자는 위의 흐름대로 내가 git(vcs)에 버전을 업로드시 자동으로 Test,Build를 실행하고 배포까지 무중단으로 진행하는 CI(지속적 통합)을 구축하고자 한다.
다만, 위의 이미지에서 Travic CI와 AWS CodeDeploy는 로컬에서 도커 컨테이너안의 젠킨스로 대체한다.
Subscribe via RSS