카테고리 없음
99클럽 코테 스터디 33일차 Version Control Jenkins
차가리
2024. 6. 25. 21:02
728x90
배포
CI
GitHub Actions- Jenkins
CD
- Argo CD
- Container
- Docker
- k8s
- 쿠버네티스
- Argo CD
란?
- 소프트웨어 개발 시 지속적으로 통합 서비스를 제공하는 툴
- CI 툴이라고 표현함.
CI(지속적 통합)
개발자가 코드 변경사항을 공유 리포지토리에 정기적으로 병합(merge) 하는 것을 의미함. 이 과정에서 Jenkins 는 코드 변경사항을 감지하고 자동으로 빌드 및 테스트를 실행하여, 새로운 코드가 기존 코드베이스와 잘 통합되는지 확인함. 다음과 같은 이점이 있음.
- 오류감소
- 자동 빌드 및 테스트로 인해 코드 통합 과정에서 발생할 수 있는 오류를 초기에 발견하고 수정할 수 있음.
- 개발 속도 향상
- 자동화된 테스트와 빌드 프로세스는 개발자가 더 빠르게 피드백을 받고 문제를 수정할 수 있게 해줌.
CD(지속적 배포)
개발된 소프트웨어를 자동으로 테스트하고 운영 환경에 배포하는 과정을 의미함. Jenkins 를 사용하면 이 과정이 자동화되어, 소프트웨어의 새로운 버전을 빠르고 자주 배포할 수 있음. 다음과 같은 이점이 있음.
- 배포 자동화
- 수동 배포 과정에서 발생할 수 있는 인간의 오류를 줄이고, 배포 과정을 빠르고 일관되게 만듬.
- 피드백 루프 강화
- 사용자와의 빠른 피드백 루프를 통해 제품을 더 빠르게 개선하고 사용자 요구에 적응할 수 있음.
Jenkins Plugins
Jenkins 의 가장 큰 강점 중 하나는 확장성에 있음. Jenkins 는 수천 가지의 플러그인을 지원하여, 거의 모든 종류의 개발, 테스트, 배포 도구와 통합할 수 있음. 이러한 플러그인은 Jenkins 를 매우 유연하게 만들어, 거의 모든 개발 환경에 맞게 조정할 수 있음.
Credentials Plugin
- Jenkins 는 서버이기 때문에 ssh 와 같은 key 가 필요함.
- AWS Token, Git Access Token, Secret Key, ssh 등을 저장해주는 플러그인임.
Git Plugin
- Jenkins 에서 git 에 대한 소스코드를 가져와서 빌드할 수 있게 도와주는 플러그인
PipeLine
- 연속적인 작업들을 젠킨스에서 하나의 파이프라인(작업) 으로 묶어서 관리할수 있게 만드는 플러그인임.
Docker Plugin and Docker PipeLine
- Docker Agent를 사용하고 Jenkins 에서 Docker 를 사용하기 위한 플러그인
728x90