CI/CD란?

bob_ssso·2021년 7월 9일
0

CI/CD

목록 보기
1/10
post-thumbnail

최종적인 스터디의 결과물은 위 사진과 같다.

🥸 CI/CD란?

CI/CD란 어플리케이션 개발 단계를 자동화하여 어플리케이션을 보다 짧은 주기로 고객에게 제공하는 방법 .

애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르는 애플리케이션의 라이프사이클 전체에 걸쳐 지속적인 자동화와 지속적인 모니터링을 제공한다. 이러한 구축 사례를 일반적으로 "CI/CD 파이프라인"이라 부르며 개발 및 운영팀의 애자일 방식 협력을 통해 지원된다.

CI/CD 기본 개념

  • 지속적인 통합(Continuous Integration)
  • 지속적인 서비스 제공(Continuous Delivery)
  • 지속적인 배포(Continuous Deploy)

개념이 와닿지 않아서 찾아보니 CI/CD를 이용한 프로젝트 예시들은 다음과 같았다.

  • 예시 1

  • 예시 2

  1. 개발자가 개발을 하고 소스를 Git에 커밋한다.
  2. Jenkins로 Docker 이미지로 빌드한다.
  3. 자동 빌드된 Docker 이미지로 테스트 서버에서 테스트를 수행한다.
  4. 테스트가 완료되면 해당 이미지를 운영 서버에 배포한다.

🥸 스터디 목표

진행과정

  • 클라우드 서버 2대 마련하기(Jenkins 서버, WAS 서버)
  • 젠킨스 서버에 젠킨스, 깃랩 설치하기
  • 젠킨스 슬랙 연동, 젠킨스 깃랩 연동해보기
  • WAS 서버에 톰캣, 오라클 설치하기
  • 젠킨스 서버와 WAS 서버 연결 테스트 하기
  • 도커라이즈
    : 모든 프로그램을 도커 컨테이너로 관리하기
    : 서버에 설치한 프로그램들도 도커를 통해 설치하고 우리의 웹어플리케이션 서버도 컨테이너로 구동시키기

개발 환경

개인 PC: MAC
클라우드 서버: GCP의 Ubuntu 18.04


참고 링크 1
참고 링크 2

profile
밥소🐈

0개의 댓글