SW/리눅스

CentOS 7 : GitLab 설치, 구성하는 방법, 예제, 명령어

얇은생각 2021. 3. 8. 07:30
반응형

GitLab은 Wiki, 이슈 관리, 코드 검토, 모니터링, 지속적인 통합 및 배포를 포함하여 루비로 작성된 웹 기반 오픈 소스 Git 저장소 관리자입니다. 개발자는 이를 통해 애플리케이션을 구축, 배포 및 실행할 수 있습니다. 

GitLab에는 커뮤니티 에디션(CE), 엔터프라이즈 에디션(EE) 및 GitLab 호스팅 버전의 세 가지 버전이 있습니다.

GitHub에서 프로젝트를 다른 곳으로 옮기려면 GitLab을 꼭 사용해봐야 합니다. GitHub를 비롯한 여러 소스에서 프로젝트와 문제를 가져올 수 있으므로 마이그레이션 프로세스가 번거롭지 않습니다. GitLab 인터페이스는 잘 설계되고, 깨끗하고, 직관적이며, 사용자 경험과 기능 면에서 GitHub의 인터페이스와 가깝습니다.

사용자의 요구 사항 및 선호도에 따라 GitLab을 설치하는 몇 가지 방법이 있습니다. 이 튜토리얼에서는 옴니버스 패키지를 사용하는 CentOS 7에 GitLab(CE)을 설치하고 구성하는 데 필요한 단계를 설명합니다. 

 

 

전제조건

이 튜토리얼에서는 새 CentOS 7에서 설치합니다.

GitLab 요구 사항 페이지에 따라 다음과 같은 서버가 권장됩니다.

- 최소 4GB의 RAM 메모리를 확보

- CPU 코어 2개

- 최소 2GB의 스왑 공간을 제공

- (선택사항) 서버 IP 주소를 가리키는 도메인 또는 하위 도메인

- 추가 보안 계층을 위해 기본 방화벽을 설정하는 것이 좋습니다. 

- 로그인하는 사용자는 패키지를 설치하려면 sudo 권한을 가지고 있어야 합니다.

 

 

 

필수 종속성 설치

로컬 패키지 인덱스를 새로 고치고 다음 명령을 사용하여 종속성을 설치합니다. 

sudo yum install curl policycoreutils-python openssh-server

 

 

GitLab이 알림 이메일을 보낼 수 있도록 Postfix를 설치 및 사용하거나 SendGrid, MailChimp, MailGun 또는 SES와 같은 일부 트랜잭션 메일 서비스를 사용할 수 있습니다. 이 경우 다음 단계를 건너뛰고 설치가 완료된 후 ([GitLab의 SMTP 설정](https://docs.gitlab.com/omnibus/settings/smtp.html)을 구성할 수 있습니다.

 다음 명령을 실행하여 Postfix를 설치합니다.

sudo yum install postfix

 

 

설치하는 동안 메일 서버 구성 유형을 선택하라는 메시지가 나타납니다. 기본 옵션은 인터넷 사이트입니다. Tab을 누른 다음 Enter 키를 누르면 권장 옵션이 표시됩니다.

그런 다음 서버 호스트 이름과 동일한 시스템 메일 이름을 입력하라는 메시지가 표시됩니다.

 설치가 완료되면 다음 명령을 실행하여 사후 수정 서비스를 시작하고 사용하도록 설정합니다.

sudo systemctl start postfix
sudo systemctl enable postfix

 

 

 

GitLab을 설치

GitLab 설치는 매우 간단한 프로세스입니다. yum 패키지 관리자를 사용하여 GitLab CE 패키지를 설치할 것입니다. 

먼저 다음 curl 명령을 사용하여 GitLab 리포지토리를 시스템 원본 목록에 추가합니다. 

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

 

 

이 스크립트는 리포지토리를 활성화하고 필요한 종속성을 설치합니다. 완료되면 다음 명령을 실행하여 GitLab 패키지를 설치합니다.

sudo yum install gitlab-ce

 

 

GitLab 리포지토리 GPG 키를 수락하라는 메시지가 표시됩니다. y를 입력하고 Enter 키를 누릅니다.

설치 프로세스에 시간이 좀 걸릴 수 있으며 설치가 성공적으로 완료된 후 다음 출력이 표시됩니다.

 

 

 

방화벽 규칙 조정

기본 방화벽 설정에 대한 가이드는 필수 구성 요소 섹션에 링크되어 있습니다. GitLab 인터페이스에 액세스하려면 포트 80 및 443을 열어야 합니다. 이렇게 하려면 다음 명령을 실행합니다.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

 

 

 

GitLab URL 설정

GitLab 웹 인터페이스에 액세스하기 전에 GitLab에 연결할 URL을 설정해야 합니다. Gitlab의 구성 파일을 열고 다음을 변경합니다.

sudo vim /etc/gitlab/gitlab.rb

 

 

구성 파일의 상단 근처에 external_url로 시작하는 줄이 표시됩니다. 도메인/하위 도메인 또는 IP 주소와 일치하도록 값을 변경합니다. 도메인이 있는 경우 https를 사용하고 서버 IP 주소를 통해 GitLab 인터페이스에 액세스하려면 http를 사용하십시오.

# /etc/gitlab/gitlab.rb

external_url 'https://gitlab.example.com'

 

 

다음에 ['enable']을 true로 설정합니다. 선택적으로 ['contact_emails']에 전자 메일 주소를 추가할 수 있습니다.

external_url을 IP 주소로 설정한 경우 Let's Encrypt 통합을 활성화하지 않아야 합니다.

# etc/gitlab/gitlab.rb

letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['admin@example.com'] # This should be an arra

 

 

마지막으로 파일을 저장하고 닫은 후 다음 명령을 실행하여 Gitlab을 재구성합니다.

sudo gitlab-ctl reconfigure

 

 

이 명령은 GitLab 설정을 재구성하고 무료 SSL 인증서 암호화 기능을 생성합니다.

 

 

 

웹 인터페이스를 통해 GitLab 구성

이제 GitLab URL을 구성했으므로 GitLab 웹 인터페이스를 통해 초기 구성으로 시작할 수 있습니다.

 웹 브라우저를 시작하고 다음을 탐색합니다.

https://your_gitlab_domain_or_server_IP.com

 

 

관리 계정 암호를 설정합니다.

웹 인터페이스에 처음 액세스할 때 관리 계정의 암호를 설정하라는 메시지가 표시됩니다.

CentOS 7 : GitLab 설치, 구성하는 방법, 예제, 명령어 1

 

 

보안 암호를 입력하고 완료되면 암호 변경 버튼을 클릭합니다.

로그인 페이지로 리디렉션됩니다.

CentOS 7 : GitLab 설치, 구성하는 방법, 예제, 명령어 2

 

 

기본 관리 계정 사용자 이름은 루트입니다. 이 튜토리얼의 뒷부분에 사용자 이름을 변경하는 방법이 나와 있습니다.

사용자 이름: root

비밀번호: [설정한 비밀번호]

로그인 자격 증명을 입력하고 로그인 버튼을 클릭하면 GitLab 환영 페이지로 리디렉션됩니다.

CentOS 7 : GitLab 설치, 구성하는 방법, 예제, 명령어 3

 

 

사용자 프로파일을 편집

먼저 사용자 프로파일을 편집하는 것이 좋습니다. 사용자 아바타(오른쪽 상단 모서리)를 클릭하고 드롭다운 메뉴에서 설정:

CentOS 7 : GitLab 설치, 구성하는 방법, 예제, 명령어 4

 

 

여기서 이름, 전자 메일 및 기타 프로필 정보 및 설정을 변경할 수 있습니다. 원하는 대로 변경하십시오.

CentOS 7 : GitLab 설치, 구성하는 방법, 예제, 명령어 5

 

 

프로필 설정 업데이트 버튼을 클릭하면 잠시 후 제공한 주소로 확인 이메일이 전송됩니다. 계정을 확인하려면 이메일에 제공된 지침을 따르십시오.

 

 

사용자 이름을 변경

프로파일 페이지에 액세스하려면 왼쪽 수직 탐색 메뉴에서 계정 링크를 클릭합니다. 

이미 알고 있듯이 첫 번째 관리 계정의 기본 사용자 이름은 루트입니다. 변경하려면 새 사용자 이름을 입력하고 Update username(사용자 이름 업데이트) 버튼을 클릭하십시오.

CentOS 7 : GitLab 설치, 구성하는 방법, 예제, 명령어 6 

 

 

이 화면에서는 이중 인증을 사용할 수도 있습니다. 

다음에 GitLab 대시보드에 로그인할 때 새 사용자 이름을 입력해야 합니다.

 

 

SSH 키를 추가

로컬 git 변경 사항을 GitLab 서버에 푸시하려면 SSH 공개 키를 GitLab 계정에 추가해야 합니다.

 로컬 시스템에 SSH 키 쌍을 이미 생성한 경우 다음을 입력하여 공개 키를 표시할 수 있습니다.

cat ~/.ssh/id_rsa.pub

# ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDd/mnMzHwjUzK8g3ldfsfRpJuC16mhWamaXRk8ySQrD/dzpbRLfDnZsLxCzRoq+ZzFHGwcQlJergtergdHGRrO8FE5jl3IWRRp+mP12qYw== admin@example.com

 

 

위의 명령에서 No(해당 파일 또는 디렉토리 없음)가 인쇄되는 경우 이는 시스템에 SSH 키 쌍이 생성되어 있지 않음을 의미합니다.

새 SSH 키 쌍을 생성하려면 다음 명령을 사용하십시오.

ssh-keygen -t rsa -b 4096 -C "your_email@domain.com"

 

 

 

cat 명령에서 출력을 복사하고 GitLab의 웹 인터페이스로 돌아갑니다. 왼쪽 수직 탐색 메뉴에서 SSH 키를 클릭하여 SSH 키 구성 페이지에 액세스합니다.

 키 텍스트 영역에서 이전에 로컬 컴퓨터에서 복사한 공용 키를 붙여넣고 설명 제목을 설정한 후 키 추가 단추를 클릭합니다. 

CentOS 7 : GitLab 설치, 구성하는 방법, 예제, 명령어 7

 

 

이제 GitLab 계정 자격 증명을 제공하지 않고도 로컬 컴퓨터에서 프로젝트 변경 내용을 밀고 가져올 수 있습니다.

반응형