ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 클라이언트 배포
    블로깅 과제 2023. 2. 3. 16:55

    CI / CD란?

    • CI : 개발자를 위한 자동화 프로세스인 지속적인 통합을 의미한다.
    • CD : 지속적인 서비스 제공 및 지속적인 배포를 의미한다.

     

    지속적 통합(Continuous Integration, CI)

    • 개발자를 위한 자동화 프로세스(Code - Build - Test)
    • Code : 개발자가 작성한 코드를 원격 저장소에 push하는 단계
    • Build : 원격저장소에 있는 코드를 가져와 유닛 테스트후 빌드하는 단계
    • Test : 빌드의 결과물이 다른 컴포넌트와 잘 통합되는지 확인하는 과정
    • 지속적인 통합 과정을 통해 보안 이슈, 에러 등을 쉽게 파악할 수 있으며 해당 이슈를 빠르게 개선할 수 있다.

     

    지속적 배포(Countinuous Delivery / Deployment, CD)

    • 지속적인 서비스 제공 및 지속적인 배포(Release - Deploy - Operate)
    • Release : 배포 가능한 소프트웨어 패키지를 작성
    • Deploy : 프로비저닝을 실행하고 서비스를 사용자에게 노출(배포)
    • Operate : 서비스 현황을 파악하고 생길 수 있는 문제를 감지
    • 이 프로세스를 완료하면 빠르고 손쉽게 어플리케이션을 프로덕션으로 배포할 수 있다.

     

    배포 자동화

    • 한 번의 클릭 혹은 명령어 입력을 통해 전체 배포 과정을 자동으로 진행하는 것을 뜻한다.
    •  수동적이고 반복적인 배포과정을 자동화하여 시간을 절약
    • 휴먼 에러 방지

     

    CI / CD 파이프라인

    • 진행되는 배포 과정을 자동화하는 것을 말한다.
    • 소스 코드의 관리부터 싱제 서비스로의 배포 과정을 연결하는 구조를 말한다.
    • Source 단계 : 원격 저장소에 관리되어 있는 소스 코드에 변경 상항이 일어날 경우 이를 감지하고 다음 단계로 전달하는 작업을 한다.
    • Build 단계 : Source 단계에서 전달받은 코드를 컴파일, 빌드, 테스트하여 가공한다. 생성된 결과물을 다음 단계로 전달하는 작업을 한다.
    • Deploy 단계 : Build 단계에서 전달받은 결과물을 실제 서비스에 반영하는 작업을 수행한다.
    • 빌드(소프트웨어 컴파일) - 테스트(호환성 및 오류 검사) - 릴리스(버전 제어 저장소의 어플리케이션 업데이트) - 배포(개발에서 프로덕션 환경으로의 변환) - 규정 준수 및 유효성 검사

     

    gitHub의 Action으로 CI / CD 구현

    https://github.com/lapmu/git_action_pr

     

    GitHub - lapmu/git_action_pr

    Contribute to lapmu/git_action_pr development by creating an account on GitHub.

    github.com

    http://fe-15-lapmu-s3.s3-website.ap-northeast-2.amazonaws.com

     

    React App

     

    fe-15-lapmu-s3.s3-website.ap-northeast-2.amazonaws.com

     

    '블로깅 과제' 카테고리의 다른 글

    Proxy  (0) 2023.02.06
    Light house 사용해보기  (5) 2023.02.01
    Webpack  (0) 2023.01.18
    웹 표준 & 접근성  (0) 2023.01.03
    Redux  (0) 2022.12.28
Designed by Tistory.