Skill
2025년 12월 03일

CI/CD 란? 그래서 뭘 할수 있는데?

개요

  • 내 프로필 포트폴리오를 만들면서 본격적으로 배포를 진행해보려고 한다. 그러면서 자연스럽게 CI/CD 라는것을 통해 배포 안정성을 높히고 빌드시 발생하는 오류들을 사전 점검하여 여러 개발자가 함께 작업하는 경우 변경사항으로 인한 충돌을 방지한다고 한다.
  • 파이프라인 구축 시 push 후에 배포까지의 과정을 모두 자동화할 수 있다는데 한번 찾아보면서 하나씩 접목시켜보도록 한다.

📝 내 프로젝트 현재 상황

  • Next.js 15 (app router)
  • domain 구매 (약 10달러)
  • Github의 repo vercel과 연동하여 기초 deploy + domain 연결

까지 현재 진행하였으며 현재까지 플로우를 보면

코드 작성 → GitHub Push → Vercel 자동 빌드 → 자동 배포 → goddddd.dev 업데이트

이정도 까지 동작하는걸로 확인된다.

🤔 그래서 CI/CD가 뭐야?

CI (Continuous Integration, 지속적 통합)

"코드를 합칠 때마다 자동으로 검증하는 프로세스"

하는 일

  • 코드를 푸시하거나 PR을 만들 때마다
  • 자동으로 빌드가 되는지 확인
  • 자동으로 테스트를 실행
  • 자동으로 코드 품질(린트, 타입체크) 검사
  • 문제가 있으면 즉시 알림

왜 필요해?

  • 여러 사람이 동시에 작업할 때 코드 충돌 방지
  • 버그를 빨리 발견 (배포 전에!)
  • 코드 품질을 일정 수준으로 유지

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

"검증된 코드를 자동으로 배포하는 프로세스"

Continuous Delivery (지속적 전달)

  • CI가 성공하면
  • 배포 준비 완료 상태로 만듦
  • 실제 배포는 수동으로 버튼 클릭

Continuous Deployment (지속적 배포)

  • CI가 성공하면
  • 자동으로 프로덕션 배포
  • 사람의 개입 없이 전부 자동화

내 프로젝트는?

Vercel이 제공하는

Continuous Deployment

를 이미 사용 중!

  • main 브랜치에 푸시 → 자동 배포 ✅
  • PR 생성 → Preview 배포 자동 생성 ✅

🎯 그러면 CI/CD를 하면 뭐가 좋아?

  1. 배포시간 단축 : 코드 푸시 → 빌드 & 배포 까지 최신 자동화
  2. 실수 방지 : 빌드시 발생할 수 있는 에러 사전 감지 및 배포 차단.
  3. 협업 향상 : PR시 품질검사, 코드리뷰

🛠️ 그럼 이제 내 프로젝트에 적용할 수 있는 CI/CD

  1. 코드 품질 자동 검증 (CI)
  2. 자동 테스트 (CI)
  3. 성능 모니터링 (CI)
  4. 의존성 관리 (CI)
  5. 배포 자동화 (CD) - vercel이 자동 적용중!
  6. 에러 모니터링 (CD)

이렇게 적용할 수 있다고한다.

이제 다음 포스팅에 코드 품질 자동 검증하는 방법을 찾아서 시도해보려고한다.