본문으로 건너뛰기

CI/CD 학습 가이드

Terraform (IaC) → Spring Boot → GitHub Actions → Argo CD → AWS EKS

목차


파이프라인 한눈에 보기

단계도구역할
1TerraformVPC, EKS, ECR, IAM 등 인프라 선언
2Spring Boot배포 대상 애플리케이션
3GitHub Actions빌드 · 테스트 · 이미지 푸시 · 매니페스트 갱신
4Argo CDGit 상태를 클러스터에 동기화 (GitOps)
5AWS EKSKubernetes 워크로드 실행

커리큘럼

Day주제링크
Day 1Terraform으로 EKS 기반 인프라day1-terraform-iac
Day 2Spring Boot 앱 · Docker 이미지day2-spring-app
Day 3GitHub Actions CIday3-github-actions
Day 4Argo CD GitOpsday4-argocd
Day 5EKS 배포 · E2E 점검day5-eks-e2e

선수 지식

  • Git 브랜치·PR 기초
  • Docker 이미지·컨테이너 기초
  • Kubernetes Pod / Deployment / Service 개념
  • Terraform init / plan / apply (또는 Day 1에서 병행)
  • AWS 계정 · aws CLI · kubectl (권장)

저장소 권장 구조

실습은 앱 저장소매니페스트(GitOps) 저장소를 나누는 것을 권장합니다.

# app repo (예: spring-demo)
spring-demo/
├── src/
├── Dockerfile
├── pom.xml / build.gradle
└── .github/workflows/ci.yml

# gitops repo (예: spring-demo-gitops)
spring-demo-gitops/
├── apps/spring-demo/
│ ├── deployment.yaml
│ ├── service.yaml
│ └── kustomization.yaml
└── argocd/application.yaml

단일 모노레포도 가능하지만, CI가 앱만 빌드하고 CD는 매니페스트만 추적하는 흐름이 분리됩니다.


관련 문서

그래프 뷰

그래프 데이터 로딩 중…
현재: CI/CD 학습 가이드
노드 클릭 → 이동 · 드래그 → 위치 조정