CI/CD란?
CI : 지속적인 통합(Continuous Integration) - 추가/변경 된 코드를 자동으로 빌드 한 후 테스트
- 예 )
CD : 지속적인 서비스 제공(Continuous Delivery) 및 / 또는 지속적인 배포(Continuous Deployment)
저번 주에 CI/CD 툴로 Github Action을 사용했다
CI/CD 툴은 정말 다양한데, 대표적으로 Jenkins가 있어서 앞으로 진행할 프로젝트에 적용해 보고자 한다.
CI/CD를 프로젝트에 적용하기 위해서 Jenkins를 공부해보자!
야금야금 써 보면서 정리하는 거라 틀리거나 흐름이 이상할 수 있다😅
여기에 Docker까지 추가적으로 더하고 싶은데 욕심인 것 같다 허허
Docker
어플리케이션을 패키징할 수 있는 툴이다
어플리케이션, 시스템 툴, 의존성 등을 묶어서 배포할 수 있으며, 도커 컨테이너 안에는 어플리케이션 + 환경설정 + 리소스 등이 포함되어 있다.
도커의 장점은 어플리케이션을 구동하기 위한 런타임 환경을 통일시켜 주는 것이며, 설정을 따로 해야 하는 번거로움을 줄여 준다는 것이다.
Container Engine(Docker Engine)을 설정하면 개별적인 어플리케이션을 만들며 운영체제를 포함하지 않고 HostOS를 공유해 VM보다 가볍다
DockerFile 👉 Image(코드, 런타임 환경, 등) 👉 Container
'CI & CD' 카테고리의 다른 글
Jenkins Slave Node (0) | 2024.12.04 |
---|