프로그래밍/CI-CD

[CI/CD] Docker 환경 배포하기 #001

SamIT 2021. 8. 14. 00:11

1. 회사에서 여러가지 프로젝트를 서비스하는 과정에서 단순히 node로 작성된 리버스 프록시 서버를 구현하는 것이 

생각보다 조금 불편한 점들이 있어서 이러한 점들을 개선하고 싶어 CI/CD를 공부하게 되었다.

 

우선, 불편한 점들은 아래와 같다.

 - 만약 프로젝트에 변경사항이 생겨 node 특성상 express 서버를 재실행해야할 때

    현재 작성된 프록시 서버(server.js)를 pm2 로 껐다 키는데, 

    이럴 경우 프록시 서버에 연결된 모든 프로젝트가 껏다가 켜지는 현상이 발행함으로 굉장히 비효율적인 것 같다.

 

 - 내가 작업한 내용들을 로컬에서 서비스 서버로 배포할 때,

    아래와 같은 작업을 진행하는데 굉장히 반복적이어서 자동화의 필요성을 느꼈다.

    (로컬 작성 > git push > 서비스 서버 접속 > git pull > server.js 재시작)

     이러한 부분을 nginx/docker/jenkins 등을 활용하여 배포를 스무스하고 자동화 할 수 있을 것 같다.

 

   

 

docker에 대해 너무 잘 설명해주신 글 : 

https://www.44bits.io/ko/post/easy-deploy-with-docker