CI/CD란
애플리케이션 개발 단계를 자동화하여 애플리케이션을 더욱 짧은 주기로 고객에게 제공하는 방법입니다.
CI/CD의 기본 개념은 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포입니다. CI/CD는 새로운 통합으로 인해 개발 및 운영팀에 발생하는 문제 통합 지옥을 해결하기 위한 솔루션입니다.
CI/CD는 애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르는 애플리케이션의 라이프사이클 전체에 걸쳐 지속적인 자동화와 지속적인 모니터링을 제공합니다.
CI : 개발자를 위한 자동화 프로세스인 지속적인 통합
CD : 지속적인 서비스 제공 및 지속적인 배포
CI/CD 선택하기
1. Travis CI
젠킨스의 경우 설치하여 사용해야 하지만 Travis CI는 오픈소스 웹 서비스이기 때문에 오픈 소스인 경우 무료로 사용이 가능하다.
.travis.yml 작성해서 푸쉬진행
2. 젠킨스
java로 빌드 된 오프 소스 CI/CD 도구 이다.
기본적으로 소프트웨어 프로젝트를 빌드, 테스트 및 배포한다.
https://heekng.tistory.com/139
SpringBoot Jenkins 배포 자동화 1
SpringBoot Jenkins 배포 자동화 1 Spring 프로젝트를 만들고, 배포를 하면서 기존 Build된 WAR 파일을 원격 서버에 전송하고, 원격 서버에서 직접 배포하는 과정이 불편하게 느껴졌다. 때문에 EC2환경에서
heekng.tistory.com
3. 깃 액션
깃 액션을 사용하면 자동으로 코드 저장소에서 어떤 이벤트가 발생했을 때 특정 작업이 일어나게 하거나 주기적으로 어떤 작업들을 반복해서 실행시킬 수도 있습니다. 예를 들어 누가 풀 리퀘스트를 생성하게 되면 깃 허브 액션을 통해 해당 코드 변경분에 문제가 없는지 각종 검사를 진행할 수 있다.
https://www.daleseo.com/github-actions-basics/
GitHub Actions의 소개와 핵심 개념
Engineering Blog by Dale Seo
www.daleseo.com
'개발 지식' 카테고리의 다른 글
WAS와 Web Server (0) | 2023.02.12 |
---|---|
동기(Synchronous)와 비동기(Asynchronous) (0) | 2023.01.24 |
Redis(2) 사용 방법 (0) | 2022.11.22 |
Redis(1) 개념 정리 (0) | 2022.11.21 |
VSCODE import 오류 (0) | 2022.10.11 |