CI/CD를 사용할 때는 gitlab을 주로 사용한다고 합니다. GitHub와 달리 기본적으로 CI/CD에 집중한 원격 저장소라는 점이 특징이기 때문입니다. GitHub가 많은 사용자와 자유로운 기능이 장점이라면, GitLab은 통합적으로 서비스를 사용할 수 있다는 것이 장점이라 각각 고유의 메리트가 있습니다. GitLab 레포지터리에 들어가보면 바로 Set CI/CD 버튼이 보이네요. 이번에는 gitlab ci를 통해 웹서버를 레포지터리에 업로드하고, 원격으로 웹서버를 띄우는 간단한 실습을 진행해보겠습니다. CI 단계만 진행하므로 서버로의 배포는 수동으로 진행합니다. 준비물 간단한 테스트를 위한 서버 애플리케이션을 생성합니다. 기본적으로 헬스 체크 기능을 만들어 연결을 확인했습니다. 레지스트리는 ECR..
데브옵스 & 인프라/Docker
도커 예를 들어, Node.js로 웹 서버 및 웹 서버 서비스를 만들었다고 할 때, 나의 운영체제와 Node.js 버전 및 DB 버전에서 코드가 정상적으로 작동할 수 있습니다. 하지만, 사람마다 사용하고 있는 운영체제도 다 다르고 런타임 환경도 다르고 사용하고 있는 DB의 버전도 다르며 의존성 및 여러 가지에서 차이가 발생합니다. 단순한 차이 때문에 전체 애플리케이션을 구동하기 위해 버전을 일일이 다 맞추어야 하고 운영체제도 고려해야 하는 등 복잡한 과정이 잇따릅니다. 여기서 도커가 등장합니다! 도커는 하나의 컨테이너로 우리가 만든 애플리케이션과 시스템 도구 및 환경설정, 의존성 등을 한 데 담아서 어떠한 PC에서든 동작할 수 있도록 해줍니다. 이렇게 도커 컨테이너를 사용하면, 애플리케이션 구동의 런타임..