오늘은 CI Tool인 Jenkins에 대해서 다뤄보겠습니다. 먼저 CI/CD (Continuous Integration/Continuous Delivery)이란? 간단하게, 애플리케이션 개발 단계를 자동화하여 애플리케이션을 더욱 짧은 주기로 고객에게 제공하는 방법입니다. 기본 개념은 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포입니다. 새로운 코드 통합으로 인해 개발 및 운영팀에 발생하는 문제를 해결하기 위한 솔루션입니다.
구성도
앞으로 천천히 작성하려고하는 구성도입니다.
앞으로 구성해볼 구성도
Jenkins 무엇인가?
Jenkins는 소프트웨어 구축, 테스트, 제공 또는 배포와 관련된 모든 종류의 작업을 자동화하는 데 사용할 수 있는 독립형 오픈 소스 자동화 서버입니다.
기본 시스템 패키지, Docker를 통해 설치하거나 JRE(Java Runtime Environment)가 설치된 모든 시스템에서 독립형으로 실행할 수도 있습니다.
Plugin(Git, Credentials, Pipeline, ... 등)을 사용하여 CI/CD Pipeline을 구축할 수 있습니다.
Jenkins 설치
Kubernetes Native 하게 구성진행하였고, 여기에서 구성한 환경을 사용했습니다.