Jenkins

    [CI/CD] Gitlab + Jenkins + Nginx + Docker + AWS EC2 - 무중단 배포

    [CI/CD] Gitlab + Jenkins + Nginx + Docker + AWS EC2 - 무중단 배포

    회사 프로젝트에 CI/CD를 적용할 일이 생겼다. 이전에 Github + Jenkins + AWS CodeDeploy를 사용해 CI/CD를 적용한 적이 있었는데, 회사 사정 상 다른 방식으로 CI/CD를 적용해야 하는 상황이다. 따라서, Gitlab + Jenkins + Nginx + Docker + AWS EC2를 사용한 CI/CD 적용 방법을 기록한다. CI/CD 구조는 다음과 같다. 1. Gitlab 저장소에 Push 한다. 2. webhook을 통해 Jenkins에서 Gitlab 레포지토리에 접근한다. +) Gitlab과 Jenkins는 회사 서버에서 도커 컨테이너로 설치했다. 나는 회사 프로젝트여서 회사 서버에 설치한 것이지, EC2 등 각각 상황에 맞는 환경에 젠킨스를 설치하면 된다. 3. J..