CICD(2)
-
[CI/CD Jenkins] Shared Libraries(공유 라이브러리) 활용
Jenkins(이하 젠킨스) 는 CI/CD 환경을 구축하기 위한 오픈소스 도구이다. 워낙 유명한 도구이니 자세한 설명은 생략하겠다. 요즘은 AWS, GCP, Azure에서 강력한 managed(지들이 운영하는) CI/CD 서비스를 내고 있고 Circle CI 등 유료 툴들이 나오면서 그 위상이 많이 떨어진게 사실이다. 하지만 특정 환경에 종속되는 CI/CD 환경 구축을 원하지 않거나, 비용적인 측면을 고려했을 때 무료 오픈소스라는 점에서 여전히 많이 선택되는 툴임은 분명하다. 젠킨스를 이용하는 방법과 방식에는 여러가지가 있겠지만 Pipeline을 사용하는 것이 대다수이다. 이번 포스팅에서는 젠킨스의 Pipeline 소스코드들을 모듈화해서 관리할 수 있는 Jenkins Library에 대해 다루겠다. 1...
2023.01.09 -
[CI/CD Pipeline] docker BaseImage Pipeline 구축
빠른 서비스 제공과 트렌드 반영을 위해 대두되고 있는 DevOps 개념 때문에 CI/CD는 이제 필수가 되었다. CI/CD는 애플리케이션의 통합 및 테스트 단계에서부터 제공 및 배포에 이르는 애플리케이션의 라이프사이클 전체에 걸쳐 지속적인 자동화와 지속적인 모니터링을 제공하는 것을 의미한다. 이러한 구축 사례를 일반적으로 "CI/CD 파이프라인"이라 부른다. MSA가 도입되면서 어플리케이션은 많아지고 CI/CD 파이프라인도 증가했다. 또한 Docker, kubernetes 등 컨테이너 기반 배포가 도입되면서 CI/CD 파이프라인은 더욱 복잡해졌고 이것들 역시 관리 포인트가 되었다. DevOps 개발자라는 직군이 나온 이유가 여기에 있는 듯 하다. 코드양이 많아지면 리팩토링을 통해 공통 모듈들을 도출하고 ..
2022.10.23