본문 바로가기
Linux/CentOS

[CentOS Stream8] 03. GitLab CE 설치

by 이도현 2021. 4. 18.

먼저 GitLab은 개인이 사용할 수 있는 GitHub라고 할 수 있다.

GitHub같은 경우 소스를 공개하지 않고 사용하려면 개인이라도 비용을 추가로 지불해야 하는데,

현재는 GitHub가 소규모 그룹에는 private 사용이 가능하도록 허용하는 것으로 알고 있다.

GitLab으로 나처럼 비상업적 용도로 사용할 때 개인 서버를 구축해서 사용하면 비용을 지불하지 않고 사용할 수 있다.

예전에는 완전 무료였지만, 지금은 상업용으로 사용하는 경우는 Enterprise Edition(ee)를 비용을 지불하고 사용해야하는 것으로 알고 있다.

일단 나는 개인이므로 Community Edition(ce)을 무료로 사용할 수 있다.

 

먼저 GitLab CE를 다운로드 받는 URL은 다음과 같다. 

about.gitlab.com/install/?version=ce

 

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

GitLab 설치를 보면 ce와 ee가 엄청 헷갈리게 되어 있어서 잘 찾아보지 않으면 ee를 설치하게 되는 경우가 많다. 확실히 ce 버전인지 확인하고 설치해야한다.

해당 URL을 들어가면 OS별 설치 방법이 나와있다. 나는 CentOS8에 설치할 것이니, CentOS8을 클릭하였다.

 

현재 기준(20210418)으로 설치 스크립트는 다음과 같다.

메일 발송 관련하여 postfix 설치 등은 건너뛸 것이다.

EXTERNAL_URL 부분은 본인 사용하는 URL에 맞춰서 수정하면 된다.

sudo dnf install -y curl policycoreutils openssh-server openssh-clients
sudo systemctl enable sshd
sudo systemctl start sshd

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

sudo EXTERNAL_URL="http://leedohyun.asuscomm.com:2070" dnf install -y gitlab-ce

이렇게 되면 일단 설치는 완료된다.

중간에 에러가 나거나 하면 설치가 정상적으로 된 것이 아니니 다시 확인해보자.

일단 포트 번호 등의 설정은 다음 명령어로 수정한다.

vi /etc/gitlab/gitlab.rb

여기서 간단히 vi 를 사용하기 위해 알아야할 단축키 몇가지를 소개한다.

단축키  
/ / 이후에 내용을 입력하고 엔터치면 검색한다.
검색된 내용 이후 내용을 찾으려면 n을 누르면 다음 항목을 찾는다
: wq! 저장하고 나가기
:q! 저장안하고 나가기
i 입력하기
u 되돌리기

제일 먼저 GitLab을 설치했기 때문에 다른 프로그램과 포트가 겹치는 문제는 생기지 않을 것 같다.

하지만 이미 톰캣 등의 서버를 설치했다면 80포트, 8080포트 관련해서 수정해야할 사항이 있을 것이다.

나는 GitLab Puma가 8080 포트를 사용하고 있어 이 부분만 수정하였다.

puma['port'] = 8083

설정을 적용하는 명령어는 다음과 같다.

sudo gitlab-ctl reconfigure

그 외에 필요한 명령어들은 다음과 같다.

sudo gitlab-ctl status
sudo gitlab-ctl restart
sudo gitlab-ctl stop

방화벽 포트 열기와 적용은 다음 명령어들로 수행한다.

sudo firewall-cmd --permanent --zone=public --add-port=2070/tcp
sudo firewall-cmd --reload

앞으로 톰캣 등을 설치하고 나서 수정할 사항이 생기면 다시 추가적으로 작성하겠다.