Teamcity로 CI/CD 구축! 배포 자동화 경험 공유

by DD
4년 전
조회수 18

Jenkins의 문제점을 해결하기 위해 Teamcity를 도입하여 CI/CD 파이프라인을 구축함

Docker 기반 환경에서 Kotlin Script를 활용, CI/CD를 Customizing함

Build Step ArrangeContainer Service 연동을 통해 빌드 프로세스 효율성을 향상시킴

Jenkins vs Teamcity: CI/CD 도구 비교

Jenkins는 다양한 플러그인을 지원하지만, Docker Container 환경에서 플러그인 설치 시 재시작이 필요하다는 단점이 존재한다. TeamcityKotlin Script를 활용하여 CI/CD를 구성하고, Docker 연동을 통해 OnPremise 서버의 제약사항을 해결했다. 따라서 빌드 프로세스 안정성을 확보했다.

Teamcity Build Process 구성 방법

Teamcity Server는 Docker CLI를 사용하여 설치하며, 내부 Container Registry를 활용한다. Agent는 OnPremise Instance에 설치하고, Docker Socket을 통해 컨테이너와 연동한다. 결과적으로 Build Step ArrangeCustomizing을 통해 유연한 CI/CD 파이프라인을 구축한다.

Kotlin Script를 활용한 CI/CD Customizing

Kotlin Script를 사용하면 CI/CD 구성을 Customizing하여 유연성을 높일 수 있다. Build Step Definition을 통해 타 시스템 연동 및 자동화가 가능하며, Container Service를 활용하여 플러그인 설치 없이 기능을 확장한다. 따라서 개발 생산성 향상을 기대할 수 있다.

Teamcity - "이제부터 배포요정은 접니다 ✋🏻"