본문 바로가기

오픈소스/깃허브

[Gitlab] 깃랩 CE 설치 및 사용법 for Ubuntu

깃(Git)은 오픈소스 버전 컨트롤 시스템으로, 크고 작은 프로젝트를 빠르고 효율적으로 관리하기 위한 것입니다.. 깃랩(GitLab)은 깃 위에서 구축되었으며, 훌륭한 인터페이스를 제공하지만, 보다 복잡한 작업을 처리하기 위해서는 커맨드 라인을 통해 깃을 사용해야 합니다.

 

깃랩 홈페이지에서 제공하는 사용법을 정리한 것입니다. 원문은 이곳에서 확인할 수 있습니다.

 

깃랩을 설치하기 전 깃랩과 깃허브의 차이점에 대해 간단하게 소개하고자 합니다.

깃랩에서는 https://about.gitlab.com/devops-tools/github-vs-gitlab/ 에서 깃허브와의 차이를 통해 자신들의 강점을 소개하고 있습니다. 

 

GitLab

See how Github compares to Gitlab single application that covers the entire DevOps Tool Chain.

about.gitlab.com

그리고 아래 내용은 깃랩과 깃헙의 차이를 간단하게 소개하는 글을 가져온 내용입니다. 출처는 아래와 같습니다. https://www.geeksforgeeks.org/difference-between-gitlab-and-github/

 

Difference Between GitLab and GitHub - GeeksforGeeks

A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.

www.geeksforgeeks.org

 

GitLab: GitLab은 GitLab Inc에서 개발하고 소프트웨어 개발 프로세스에 사용되는 저장소 호스팅 관리자 도구입니다. 소프트웨어 개발 수명 주기를 완료하기 위한 협업 워크플로를 간소화할 수 있는 다양한 관리 기능을 제공합니다. 또한 Google Code, Bitbucket 등에서 저장소를 가져올 수 있습니다. 


다음은 GitLab의 일부 기능입니다.

 

  • 오픈 소스 커뮤니티 에디션 저장소 관리 플랫폼.
  • 서버에 리포지토리를 쉽게 유지 관리합니다.
  • 효과적인 개발을 위해 Group Milestones, Time Tracking 및 Issue Tracker 등과 같은 도구를 제공합니다.
  • 보다 자발적인 사용자 인터페이스 및 인증 기능.
  • 사용자 권한 및 분기 보호가 향상되었습니다.

 

GitHub: GitHub는 협업 및 액세스 제어 기능을 제공하는 리포지토리 호스팅 서비스 도구입니다. 프로그래머가 함께 버그를 수정하고 오픈 소스 프로젝트를 호스팅할 수 있는 플랫폼입니다. GitHub는 개발자를 위해 설계되었으며 리포지토리를 통해 프로젝트에 대한 변경 사항을 추적하는 데 도움이 됩니다. 


다음은 GitHub의 일부 기능입니다. 

 

  • 프로젝트에 이정표와 레이블을 지정합니다.
  • 지점 간의 비교 보기가 허용됩니다.
  • GitHub 페이지를 사용하면 GitHub 내에서 웹사이트를 게시하고 호스팅할 수 있습니다.
  • 구문 강조 기능.
  • 버그 추적 및 클라우드 호스팅을 위한 타사 API 통합을 허용합니다.

 

그러면 깃랩을 설치하는 방법에 대해 알아보도록 하죠.

 

 

# Contents


  • 설치 환경
  • How to Install GitLab

 

 

# 설치 환경


추천 사양은 아래와 같습니다. https://docs.gitlab.com/ee/install/requirements.html

 

Installation requirements | GitLab

Documentation for GitLab Community Edition, GitLab Enterprise Edition, Omnibus GitLab, and GitLab Runner.

docs.gitlab.com

  • Ubuntu 20.04
  • RAM: 4G
  • CPU: 4 Core

 

 

 

# How to Install GitLab


 깃랩을 설치하는 방법은 아주 간단합니다. 깃랩에 필요한 라이브러리를 다운받은 후 깃랩을 설치한 다음 설정파일을 수정해주기만 하면 됩니다. 다음 단계를 천천히 따라오면서 설치해보도록 하죠.

 

1. 의존성 설치

필수 의존성을 설치하기 위해서는 아래와 같은 커맨드를 입력해야 합니다.

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

 

그리고, 이메일 확인을 위해서는 Postfix를 설치해야 합니다.. 다른 솔루션을 사용하여 이메일을 보내려면 이 단계를 건너뛰고 GitLab을 설치한 후 외부 SMTP 서버를 구성해야 합니다.

sudo apt-get install -y postfix

 

Postfix 설치 중에 구성 화면이 나타날 수 있습니다. 'Internet site'를 선택하고 Enter 키를 누릅니다. 서버의 외부 DNS를 '메일 이름'에 사용하고 Enter 키를 누릅니다. 추가 화면이 나타나면 Enter 키를 계속 눌러 기본값을 적용합니다.

 

Postfix 를 설치 안하셔도 무방합니다. 단 이메일 인증을 하실 수 없습니다.

 

2. 레파지토리 변경 및 깃랩 설치

Gitlab Package Repository를 추가 & 설치 안내 링크에는 gitlab-ee 버전으로 안내되어 있지만, ce용으로 설치하기 위해 아래 명령어를 입력한다.

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

 

다음으로 GitLab 패키지를 설치합니다. DNS를 올바르게 설정했는지 확인하고 https://gitlab.example.com 을 GitLab 인스턴스에 액세스할 URL로 변경합니다. 설치 시 해당 URL에서 GitLab이 자동으로 구성되고 시작됩니다.

https:// URL의 경우 GitLab이 Let's Encrypt를 사용하여 인증서를 자동으로 요청하므로 인바운드 HTTP 액세스와 유효한 호스트 이름이 필요합니다. 사용자 자신의 인증서를 사용하거나 http:// 를 사용할 수도 있습니다.

 

sudo EXTERNAL_URL="http://localhost:8080" apt-get install gitlab-ce

 

3. 홈페이지로 로그인

암호가 무작위로 생성되어 /etc/gitlab/initial_root_password 경로에 24시간 동안 저장됩니다.

사용자 이름과 함께 이 비밀번호를 사용 root하여 로그인하십시오.

설치 및 구성에 대한 자세한 지침은 설명서를 참조하십시오.

 

4. 인스톨 성공

4번과정을 마치면 약간의 시간이 경과 한 후 아래와 같은 화면이 뜨는데 붉은색으로 밑줄 친 부분이 4번에서 설정한 EXTERNAL_URL 이 표시되는 부분입니다.
GitLab should be available at EXTERNAL_URL 을 통해 Gitlab이 이용 가능하다는 것을 확인할 수 있습니다.

 

 

 

5. 설정 파일 수정

EXTERNAL_URL 또는 gitlab에 대한 설정값을 변경하기 위해서는 아래 경로의 파일을 열어 수정하면  됩니다.

vi /etc/gitlab/gitlab.rb

 

 

위 명령어를 통해 gitlab.rb 파일을 열면 아래와 같은 화면이 나오게 됩니다. ( vi는 vim 편집기로 열겠다는 의미이며, 각자가 선호하는 편집기를 이용하여 열면 됩니다. )

 

 

 

external_url 부분 이 보입니다.

이부분을 변경하려면 변경하면 되고 다를 설정을 변경하려면 해당 부분을 찾아 변경하면 된다. 변경 후 반영을 하기 위해서는

gitlab-ctl reconfigure

 

위 명령어를 통해 gitlab.rb 에서 수정한 것을 반영시킵니다.

 

 

 

'오픈소스 > 깃허브' 카테고리의 다른 글

[Gitlab] 깃랩 복원 (백업을 통한 복구)  (0) 2021.10.05
[Gitlab] 깃랩 백업 설정  (0) 2021.10.05