개인 프로젝트에서 주로 사용되는 CI/CD 구축 방법

2025. 6. 25. 20:46·Server&load/CI CD
  1. 개인 프로젝트 (Github Actions)
    1. 전체적인 흐름
    2. 장점
      • 대부분의 CI/CD 방식은 전체 프로젝트를 통째로 전달하는 방식을 사용함.
      • Git pull을 활용하여 변경된 부분의 프로젝트 코드에 대해서만 업데이트하기 때문에 CI/CD 속도가 빠름.
      • CI/CD 툴로 Github Actions 만 사용하기 때문에 인프라 구조가 간단.
    3. 단점
      • 빌드 작업을 EC2에서 직접 진행하여, 운영하는 서버의 성능에 영향을 미칠 수 있음.
      • Github 계정 정보가 해당 EC2에 저장되어 보안적으로 문제가 있음.
    4. 주로 사용되는 프로젝트
      • 개인 프로젝트에서 CI/CD 를 심플하고 빠르게 적용시키고 싶을 때 활용한다.
  2. 일반 프로젝트 (Github Actions, SCP)
    1. 전체적인 흐름
    2. 장점
      • 빌드, 테스트 작업을 Github Actions 에서 진행 후 EC2에 빌드 파일을 전달하여 서버 성능에 영향을 거의 주지 않음.
      • CI/CD 툴로 Github Actions 만 사용하기 때문에 인프라 구조가 복잡하지 않음.
    3. 단점
      • 무중단 배포를 구현하거나 여러 EC2인스턴스에 배포를 해야하는 상황인 경우, 직접 Github Actions에 스크립트를 작성하여 구현해야 함.
    4. 주로 사용되는 프로젝트
      • 현업에서 초기 서비스 구축 시, 주로 활용됨.
      • 처음 서비스 구현 시, 대규모 서비스에 적합한 구조보다는 확장 필요성이 있다고 느낄 때 인프라를 고도화한다.
      • 복잡한 인프라 구조가 다양한 곳에서 금액이 소모됨.
        • 인프라 구조 변경
        • 에러 발생 시, 트러블 슈팅
        • 팀원의 인프라 구조 이해 시간
        • 기능 추가 및 수정 시 들어가는 시간
        • 금전적인 비용.
  3. 확장성을 고려한 프로젝트 (Code Deploy)
    1. 전체적인 흐름
    2.  장점
      • Code deploy를 사용하는 이유
        • 여러대의 서버이더라도 AWS EC2에 배포를 쉽게 할 수 있도록 도움
        • 무중단 배포 기능이 내재되어 있어 쉽게 무중단 배포를 진행 가능..
      • 서버가 여러대여도 쉽게 자동 배포를 구축할 수 있다.
    3. 단점
      • 인프라 구조가 복잡해진다. 관리 비용, 유지비수 비용, 복잡도 등이 증가한다.
    4. 주로 사용되는 프로젝트
      • 서버를 여러대 이상 구동해야 하거나, 무중단 배포가 중요할 때 주로 사용됨

 

 

 

 

'Server&load > CI CD' 카테고리의 다른 글

Github Actions 기본 문법 및 사용 방법 정리  (0) 2025.06.24
CI/CD 를 배우는 이유  (0) 2025.06.23
'Server&load/CI CD' 카테고리의 다른 글
  • Github Actions 기본 문법 및 사용 방법 정리
  • CI/CD 를 배우는 이유
몽자비루
몽자비루
코딩공부 정리용 블로그입니다.
  • 몽자비루
    공부하는 블로그
    몽자비루
  • 전체
    오늘
    어제
    • 분류 전체보기 (195)
      • python (30)
        • python_selenium (16)
        • python_pygame (3)
      • appium (0)
      • 쿠버네티스 (60)
        • linux (8)
        • shell programming (8)
        • docker (18)
        • cka (23)
      • postman&API (16)
      • QA성장하기 (33)
        • 개발자에서 아키텍트로 스터디 (6)
        • 소프트웨어 공학 이해도 높이기 (6)
        • 테스팅 전문 지식 쌓기 (18)
        • 제4회 QA conference (3)
      • 에러일기 (1)
      • Server&load (35)
        • AWS (27)
        • load test (5)
        • CI CD (3)
        • Jmeter (0)
      • RAG 을 활용하여 LLM 만들어보기 (12)
      • git&github (7)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    k8s
    사드웨어리소스
    API
    테스트스크립트
    qa conference
    도커
    포스트맨
    테스트 결과보고서
    앱공존성
    python
    qa 컨퍼런스
    e2c
    스터디
    application log
    공존성테스트
    로스트아크api
    로스트아크
    QAKOREA
    애플리케이션로그
    네트워크 테스트
    쿠버네티스
    리눅스
    qa
    vi에디터
    postman
    LOSTARK
    cka
    .cpu
    개발자에서아키텍트로
    linux
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
몽자비루
개인 프로젝트에서 주로 사용되는 CI/CD 구축 방법
상단으로

티스토리툴바