깃랩(GitLab)은 온프레미스(on-premise) 설치형 깃 호스팅으로 유명하다.

깃헙처럼 웹서비스형태로도 사용이 가능하긴한데, 웹서비스형태로서의 사용은 깃헙이 선점하다시피 하고있다.

 

깃랩의 장점은 다음과 같다.

  1. 온프레미스 형태로 사용이 가능하다.
  2. CI/CD 지원이 뛰어나다.
  3. Web IDE를 지원한다.
  4. 유료 플랜을 사용할 경우, 깃랩에서 모든걸 처리할 수 있게끔 쿠버네티스 관리 보드를 지원한다.

 

깃랩의 CI/CD는 도커 컨테이너 위에서 돌아가고, 연결된 쿠버네티스에 배포된다.

프로젝트 루트에 gitlab-ci.yml 파일이 있는 상태에서 푸시가 들어오면 해당 파일에 명시된 파이프라인(task 묶음)이 실행된다.

일반적인 파이프라인의 구성은 다음과 같다.

  1. Test : 유닛 테스트, 통합 테스트, E2E 테스트, 테스트 커버리지를 측정한다.
  2. Lint : 코딩 컨벤션, 퀄리티를 측정한다.
  3. Build : 빌드, 번들링, Dockerfile 빌드 등을 수행한다.
  4. Deploy : Helm Chart, KNative Functions, KNative App을 배포한다.

 

깃랩 CI/CD의 흐름은 다음과 같다.

 

 

'DevOps' 카테고리의 다른 글

[DevOps] DevOps란?  (0) 2020.07.03
[DevOps/Infra] Docker에 MySQL 띄우기  (0) 2020.06.24
[DevOps/Infra] AWS CloudFormation  (0) 2020.03.18
[DevOps/CI/CD] Jenkins  (0) 2020.03.03