Development/Git

나의 서버에 GitLab 설치하기 (Git, GitLab 설치 및 명령어)

고고마코드 2023. 12. 4. 12:00
반응형

권장사양

  • CPU : 4코어 이상 권장
  • 메모리 : 4GB 이상 권장 (실행만 해도 3.5GB 정도 사용함, 사용자가 많을수록 많이 필요)
  • 스토리지 : 데이터를 저장하기에 충분한 용량 필요
  • 데이터베이스 : GitLab에 내장되어 있는 PostgreSQL을 기본적으로 사용하지만, 따로 데이터베이스를 사용하기 위해서 별도의 설정이 필요 (이 부분은 다루지 않습니다.)

나의 사양

운영체제 : CentOS 7

  • CPU : 4코어
    • grep 'cpu cores' /proc/cpuinfo | uniq
  • 메모리 : 4GB
    • free -h
  • 디스크 : 459GB
    • df -h

Git 설치

시스템 업데이트

CentOS를 최신 상태로 업데이트한다.

# CentOS 패키지 관리 도구를 최신상태로 업데이트
sudo yum update

# 각종 코드를 컴파일하고 빌드하는 데 필요
sudo yum groupinstall "Development Tools" 

#Git을 빌드하는 데 필요한 추가 의존성 설치, 지금 설치해야 빌드 및 설치 과정에서 오류가 발생하지 않음.
sudo yum install gettext-devel openssl-devel perl-CPAN perl-devel zlib-devel curl-devel expat-devel 

Git 설치

# Git 설치
sudo yum install git

단, 이 방법은 OS의 버전에 따라 최신 버전의 Git이 설치되지 않을 수 있음.

최신 버전의 Git 설치

# 기존에 설치된 Git을 제거
sudo yum remove git
  1. https://git-scm.com 링크로 이동하여 최신 버전 확인 (2023-11-28 기준 2.43.0이 최신버전임)
  2. https://mirrors.edge.kernel.org/pub/software/scm/git 링크로 이동하여 최신 버전 검색
    • 리눅스이기 때문에 *.tar.gz 설치
    • https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.43.0.tar.gz
# 원하는 버전의 Git 설치
curl -o git.tar.gz https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.43.0.tar.gz

# 압축 파일 해제
tar -xzf git.tar.gz

# 압축 파일 삭제
sudo rm -rf git.tar.gz
  • 빌드 및 설치
# 보관하려는 경로로 이동
mv git-2.43.0 /etc/git 

# Git 빌드 및 설치
cd /etc/git
sudo make prefix=/usr/local all
sudo make prefix=/usr/local install

❗ 만약 sudo make prefix=/usr/local all 과정에서 오류가 발생하면 관련된 패키지를 설치 후 sudo make prefix=/usr/local install을 실행할 것.

버전 확인

session 종료 후 다시 접속해서 git --version 했을 때 설치한 버전이 정상적으로 나오면 성공

GitLab 설치

# 의존성 설치
sudo yum install -y curl policycoreutils-python openssh-server perl cronie

# gitlab-ce 다운로드
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

# GitLab-ce 설치
sudo EXTERNAL_URL="[내가 사용할 주소 또는 IP]" yum install -y gitlab-ce

# GitLab 서버 초기화
sudo gitlab-ctl reconfigure

GitLab 명령어

  • gitlab-ctl reconfigure : GitLab 변경 파일 재구성및 재기동
  • gitlab-ctl status : GitLab 상태 확인
  • gitlab-ctl stop : GitLab 중지
  • gitlab-ctl start :GitLab 시작
  • gitlab-ctl restart : GitLab 재시작

GitLab 저장소 위치 변경

기본으로 저장되는 위치는 /var/opt/gitlab/git-data/repositories 인데, 추후 용량 관리를 위해서 원하는 경로로 이동시킨다.

vi /etc/gitlab/gitlab.rb

git_data_dirs({
    "default" => {
        "path" => "[원하는 경로]"
    }
})
반응형