CI / CD 의 개념, 등장한 이유, 대표 플랫폼
이번 포스팅에서는 CI / CD의 개념과 등장이유, 대표 툴에 대해서 알아보겠습니다.
CI / CD의 개념
CI 는 Continuous Integration 의 약자로 지속적 통합을 의미합니다.
프로젝트를 진행하면서 새로운 기능을 개발하거나 코드가 변경되는 경우 SVN과 같은
형상관리 서버로 Commit을 할 것입니다. 그럼 CI 서버는 일정주기로 형상관리 서버를 Polling하여
빌드와 테스트를 진행합니다. 그리고 결과를 레포팅 해주죠.
개발자는 레포트를 확인하여 미처 발경하지 못한 코드의 문제를 파악하고 수정할 수 있습니다.
이전에 개발자들이 해야했던 일을 자동으로 처리함으로써 소프트웨어의 품질이 높아지게 됩니다.
CD는 Continuous Deployment or Coutinuous Delivery의 약자로
지속적 배포 / 지속적 제공을 의미합니다.
CI 이후 릴리즈가 가능한 단계에서 자동로 배포까지 이루어진다면 Continuous Deployment,
배포는 수동으로 한다면 Continuous Delivery로 정의합니다.
개인적으로 실서버 배포까지 자동으로 된다면 사전에 정말 충분한 테스트가 사전에 이루어져야 할 것 같습니다.
여러 프로젝트의 CI / CD를 운영하기 위해선 별도의 서버를 활용해야 하고
VPN 같은 가상사설망이 사용되는 경우에도 스케쥴링을 잘 해야될 것이라고 생각됩니다.
마지막으로 CI / CD 툴에는 어떤 것들이 있는지 알아보겠습니다.
Jenkins
2005년 출시된 MIT 라이센스의 무료 CI / CD 플랫폼입니다. 다양한 OS에서 사용가능하며 가장 정보가 많습니다.
Bamboo
https://www.atlassian.com/ko/software/bamboo
Atlassian 이라는 회사에서 개발한 유료 CI / CD 플랫폼 입니다. Atlanssian의 다양한 제품들과 연동하여 사용할 수 있습니다.
CircleCI
부분적 무료인 CI / CD 플랫폼 입니다. 가장 인기있는 CI / CD 플랫폼 중 하나 입니다.
TeamCity
https://www.jetbrains.com/ko-kr/teamcity/
개인은 무료로 사용할 수 있는 CI / CD 플랫폼 입니다.
'알짜정보 > IT정보' 카테고리의 다른 글
Jenkins SVN 플러그인 추가 및 연동 방법 (2) | 2022.05.03 |
---|---|
CI /CD 플랫폼 Jenkins 다운로드 및 설치 방법 for Window (0) | 2022.05.03 |
Redis windows 용 다운로드 및 설치 Desktop Manager 설치 방법 패스워드 설정 (0) | 2022.03.17 |
웹 페이지 성능테스트 도구 JMeter 사용방법 (0) | 2022.01.28 |
Windows DNS 정보를 확인해보자 nslookup (4) | 2021.05.13 |
댓글