- [ backend/ci•cd ][CD] 블루/그린 무중단 배포 구현하기 2편 (GitHub Actions/Shell Script)2024-01-08 00:02:16🔗 [CD] 블루/그린 무중단 배포 구현하기 1편 (NGINX/Docker Compose) 이번 포스팅에서는 1편에서 작성한 도커 컴포즈 파일을 바탕으로 블루/그린 무중단 배포를 구현할 것이다. GitHub Actions란? 깃헙 액션은 깃헙에서 제공하는 자동화 도구로, 빌드, 테스트, 배포 파이프라인을 자동화할 수 있다. 깃헙 액션은 특정 이벤트가 발생하면 액션을 자동으로 실행하게 되는데, 이를 활용하여 특정 브랜치에 코드가 push 되었을 때 어플리케이션을 배포할 수 있다. 이외에도 레포지토리에 이슈가 생성될 때마다 자동으로 적절한 라벨을 붙여주는 등의 워크플로우를 만들 수 있다. workflow 워크플로우는 하나 이상의 작업을 실행하는 자동화된 프로세스다. `.github/workflows` 디렉토..
- [ backend/ci•cd ][CD] 블루/그린 무중단 배포 구현하기 1편 (NGINX/Docker Compose)2024-01-07 18:20:00야 너두 무중단 배포 할 수 있어 🫵이 글은 도커, 엔진엑스, 깃헙 액션을 한 번도 써본 적 없고, 무중단 배포라는 용어도 처음 들어본 사람의 무모한 무중단 배포 도전기다. 제발 나처럼 고생하는 사람이 없길 바라며 삽질을 거름으로 완성한 블루/그린 무중단 배포 도전기를 풀어보겠다. 무중단 배포란?신규 버전의 어플리케이션을 새롭게 배포하는 과정을 가정해보자. 로컬에서는 신규 어플리케이션을 빌드하고, 서버에서는 현재 실행중인 버전을 종료한다. 기존 버전의 종료되면 빌드한 결과물을 서버에서 실행하고, 그 결과 신규 어플리케이션이 배포된다.하지만 해당 방법은 구버전이 종료되고 신규 버전이 실행되기 전까지 사용자가 서비스를 이용할 수 없다는 치명적인 단점이 있다. 이를 보완하고자 서비스의 중단없이 업데이트를 수..