Git | GitLab

[Ubuntu 18.04 LTS] GitLab 설치

비번변경 2021. 5. 24. 21:32

Ubuntu 18.04 LTS에 GitLab-CE 설치 방법을 적어둔다.

당연하겠지만 공식 가이드 문서를 참고할 것.

공식 가이드 문서 : https://about.gitlab.com/install/

 

Download and install GitLab

Learn about the various GitLab installation packages and downloads for Ubuntu, Debian, Docker, Google Cloud, and many more.

about.gitlab.com

 

방법

1. OS 버전 확인

cat /etc/issue

# 또는
uname -a

# 또는
cat /etc/*release*

OS 버전 확인

만약 사진처럼 Amazon Linux 2 AMI를 사용하는 EC2에 설치하고자 한다면 CentOS 7 버전의 문서를 참고할 것.

다만 이 글은 Ubuntu에서 설치하는 것만 다룬다. 사실 명령어만 조금 차이 있고 과정은 동일하다.

 

2. 의존성 패키지 설치

sudo apt-get update
sudo apt-get install curl openssh-server ca-certificates tzdata perl

보통 y 옵션을 줘서 별도로 사용자 확인 없이 설치하게끔 하는데, 어떤 패키지가 설치되는지 확인하는 것을 권한다.

 

패키지 설치 확인

dpkg -l

# 또는
apt --installed list

설치된 패키지 전체가 출력되기 때문에 grep으로 필터링하면 좋다.

 

3. 메일 서버 설치

sudo apt-get install postfix

postfix는 GitLab에서 알림 이메일을 보내기 위해 필요하다. 나는 필요하지 않아서 설치하지 않았다. 별도로 SMTP를 구성해 사용한다면 설치하지 않아도 된다.

 

4. Gitlab 패키지 레포지터리 추가 및 설치

두 가지 명령어 중에 필요한 것을 실행한다.

# GitLab CE
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

# GitLab EE
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash

GitLab은 Community Edition과 Enterprise Edtion으로 구분되는데, 그 차이는 아래 사진과 같다.

Gitlab CE/EE 차이
출처 : https://ux.stories.pe.kr/192

  • Community Edition : Core로만 구성되어 무료 오픈소스로 사용 가능
  • Enterprise Edtion : Core는 CE와 동일. 가격에 따라 티어가 구분되며 고급 기능 제공

 

무료로 사용하고자 하는 경우, 둘 중 아무 버전을 설치해도 상관없다. 다만 CE 버전을 사용하다 버전을 업그레이드하려는 경우에는 서비스 중단이 필요할 수 있다. GitLab 공식 홈페이지에서는 EE 버전 이용하기를 권하고 있다.

 

이 글에선 CE 버전을 설치했다.

 

5. GitLab 설치

sudo EXTERNAL_URL="https://gitlab.example.com" apt-get install gitlab-ce

# 포트 번호 지정
sudo EXTERNAL_URL="http://IP:PORT_NUM" apt-get install gitlab-ce

EXTERNAL_URL 부분에는 웹 브라우저를 통해 GitLab에 접속할 때 사용할 URL 주소를 설정한다. 도메인 주소가 있다면 도메인 주소를 설정하면 된다.

만약 포트 번호를 지정한다면 기존에 사용하지 않은 번호로 적절하게 설정한다.

netstat -ano | grep <PORT_NUM>

 

발생 가능 에러

letsencrypt_certificate 에러
- 원인 : 인증서 구성 없이 https 사용
- 해결방법 : http 사용 또는 인증서 구성
=> 이 글에서는 http를 사용한다.

설치 완료 후 접속 시 502 에러
- 원인 : 단순 서비스 지연 또는 포트 충돌
- 해결 : 대기 후 새로고침 또는 포트 변경

 

5.5 설정 파일 변경 및 설정 적용

설정 파일을 수정했다고 자동으로 적용되지는 않는다.

# 설정 파일 수정
sudo vim /etc/gitlab/gitlab.rb

# 변경 설정 적용
sudo gitlab-ctl reconfigure

 

6. 설치 완료

정상적으로 설치가 완료됐다면 웹 브라우저를 통해 EXTERNAL_URL로 접속한다.

Gitlab 관리자 계정 비밀번호 설정

최소 접속 시에는 관리자 계정의 비밀번호를 설정하게 된다. 비밀번호 설정 이후에는 접속 시 아래와 같은 로그인 화면을 볼 수 있다.

 

Giltab 로그인 화면

참고로 관리자 계정의 Username은 root이다.