CI/CD 파이프라인 도구인 Jenkins를 Kubernetes 환경에서 학습합니다.
이 섹션을 통해 다음을 학습할 수 있습니다:
Jenkins를 빠르게 설치하려면:
# 1. Helm Repository 추가
helm repo add jenkins https://charts.jenkins.io
helm repo update
# 2. Namespace 생성
kubectl create namespace cicd-jenkins
# 3. Jenkins 설치 (기본 설정)
helm install jenkins jenkins/jenkins -n cicd-jenkins
# 4. Admin 비밀번호 확인
kubectl exec --namespace cicd-jenkins -it svc/jenkins -c jenkins -- /bin/cat /run/secrets/additional/chart-admin-password && echo
# 5. Jenkins 접속
kubectl port-forward svc/jenkins -n cicd-jenkins 8080:8080
# http://localhost:8080
[!TIP] 프로덕션 환경에서는 영구 볼륨과 Ingress를 사용한 설치를 권장합니다. 자세한 내용은 02-kind-installation.md를 참조하세요.
Jenkins는 GitOps 워크플로우에서 CI(Continuous Integration) 역할을 담당합니다:
1. Developer → Git Push (코드 변경)
2. Jenkins → 자동 빌드 트리거
3. Jenkins → 테스트 실행
4. Jenkins → Docker 이미지 빌드
5. Jenkins → Container Registry에 푸시
6. Jenkins → Manifest Repository 업데이트 (이미지 태그)
7. ArgoCD → Manifest 변경 감지
8. ArgoCD → Kubernetes에 자동 배포
Jenkins 설치 및 설정 후: