CI/CD 란
- CI (Continuous Integration)
- 지속적인 통합이라는 의미
- 어플리케이션의 코드 변경 사항이 정기적으로 빌드 및 테스트되어 공유 레포지토리에 통합하는 것을 의미
- CI가 필요한 환경
- 여러 개발자가 형상관리 툴(Git)을 공유하여 사용하는 환경
- 자동화된 필드 및 테스트
- MSA(Micro Service Architecture) 환경
- MSA는 작은 기능 별로 서비스를 잘개 쪼개어 개발하는 형태
- 애자일 방법론 적용
- 기능 충돌 방지
- 여러 개발자가 형상관리 툴(Git)을 공유하여 사용하는 환경
- CD (Continuous Delivery, Continuous Deployment)
- 지속적인 서비스 제공, 지속적인 배포라는 의미
- 개발자의 변경 사항이 고객의 프로덕션 환경까지 release 되는 것을 의미 (자동화)
- Continuous Delivery는 공유 레포지토리로 자동으로 release 하는 것
- Continuous Deployment는 production 레벨까지 자동으로 deploy 하는 것을 의미
CD 기본 구축
- Github Action 사용
- github 레포지토리에 들어가서 상단의 Actions 메뉴 클릭
- Java with gradle 클릭
- name: Build with Gradle 수정
- name: Build with Gradle
#uses: gradle/gradle-build-action@bd5760595778326ba7f1441bcf7e88b49de61a25 # v2.6.0
#with:
#arguments: build
run: ./gradlew clean build
728x90
'Computer Science > CI&CD' 카테고리의 다른 글
[CI/CD] Jar 파일 생성 및 실행, Jar 파일 도커 컨테이너 실행, 도커 컴포즈 컨테이너 실행까지 (0) | 2024.01.16 |
---|---|
[CI/CD] Docker Compose란 (0) | 2024.01.12 |
[CI/CD] Docker, Dockerfile, Docker Image, Docker Container란 (0) | 2024.01.11 |
[CI/CD] AWS Elastic Beanstalk이란 (0) | 2024.01.11 |
[CI/CD] AWS S3, IAM, EC2, CodeDeploy란 (0) | 2024.01.11 |