Linux 패키지로 GitLab 설치하기
전제 조건
- 설치 요구 사항.
-
mygitlabinstance.com
과 같은 도메인 이름을 통해 GitLab 인스턴스에 액세스하려면, 해당 도메인이 GitLab을 설치하는 서버의 IP를 올바르게 가리키는지 확인하세요. 이를 확인하려면host mygitlabinstance.com
명령을 사용할 수 있습니다. - GitLab 인스턴스에서 HTTPS를 사용하려면 해당 도메인의 SSL 인증서를 준비해야 합니다. (특정 컴포넌트인 컨테이너 레지스트리 등은 해당 서브도메인에 대한 인증서도 필요합니다.)
- 알림 이메일을 보내려면 Sendmail이나 Postfix와 같은 메일 서버(MTA)를 설치하고 구성해야 합니다. 또는 다른 삼자 제공 SMTP 서버들을 사용할 수도 있습니다.
설치 및 구성
이 구성 설정은 주로 Linux 패키지 설치를 구성할 때 사용됩니다. 전체 설정 디렉터리은 README 파일을 참조하세요.
- GitLab 설치.
- GitLab 인스턴스에 쉽게 액세스할 수 있도록 도메인 이름/URL 설정.
- HTTPS 활성화.
- 알림 이메일 활성화.
- 이메일로 회신 활성화.
-
GitLab의 컨테이너 레지스트리 활성화.
- 컨테이너 레지스트리에 사용되는 도메인에 대한 SSL 인증서가 필요합니다.
-
GitLab Pages 활성화.
- HTTPS를 사용하려면 와일드카드 인증서가 필요합니다.
- Elasticsearch 활성화.
- GitLab Mattermost. Linux 패키지와 함께 제공되는 Mattermost 메시징 앱을 설정하세요.
- GitLab Prometheus Linux 패키지에 포함된 Prometheus 모니터링을 설정하세요.
- GitLab 고가용성 역할.
초기 비밀번호 설정
기본적으로 Linux 패키지 설치는 초기 관리자 사용자 계정(root
)을 위한 비밀번호를
자동으로 생성하고 최소 24시간 동안 /etc/gitlab/initial_root_password
에 저장합니다.
보안상의 이유로, 24시간이 지나면 이 파일은 첫 번째 gitlab-ctl reconfigure
에 의해 자동으로 제거됩니다.
사용자 정의 초기 root 비밀번호를 제공하려면 두 가지 옵션이 있습니다:
-
호스트 이름이 올바르게 설정되어 있는 경우 설치 명령에
GITLAB_ROOT_PASSWORD
환경 변수를 전달하세요:sudo GITLAB_ROOT_PASSWORD="<strongpassword>" EXTERNAL_URL="http://gitlab.example.com" apt install gitlab-ee
만약 GitLab이 설치 중에 자동으로 다시 구성을 수행하지 않으면, 첫 번째
gitlab-ctl reconfigure
실행 시GITLAB_ROOT_PASSWORD
변수를 전달해야 합니다. -
첫 번째 다시 구성 이전에,
/etc/gitlab/gitlab.rb
를 수정하고 (없는 경우 생성):gitlab_rails['initial_root_password'] = '<my_strong_password>'
이 두 가지 방법은 초기 데이터베이스 시딩 중에만 적용됩니다. 이는 첫 번째
다시 구성 중에 발생합니다. 후속 다시 구성 실행에서는
상기 언급된 방법 중 어느 것도 효과가 없습니다. 이 경우에는
/etc/gitlab/initial_root_password
의 무작위 비밀번호를 사용하여 로그인하거나
root 암호를 재설정하세요.
Docker 이미지 사용
GitLab이 제공하는 Docker 이미지를 사용하여 GitLab 인스턴스를 설치하고 구성할 수도 있습니다. 자세한 내용은 문서를 확인하세요.
Linux 패키지(Omnibus) 제거
Linux 패키지를 제거하려면 데이터(리포지터리, 데이터베이스, 구성)를 유지하거나 모두 제거할지 선택할 수 있습니다:
-
Linux 패키지로 생성된 모든 사용자 및 그룹 삭제 (apt나 yum으로) 전 패키지를 삭제하기 전에(Optional):
sudo gitlab-ctl stop && sudo gitlab-ctl remove-accounts
계정이나 그룹을 삭제하는 데 문제가 있는 경우,userdel
이나groupdel
을 매뉴얼으로 실행하여 삭제하세요. 또한/home/
에서 사용자 홈 디렉터리를 매뉴얼으로 제거할 수도 있습니다. -
데이터를 유지하거나 모두 제거할지 선택하세요:
-
데이터(리포지터리, 데이터베이스, 구성)를 유지하려면 GitLab을 중지하고 그 감독 프로세스를 제거하세요:
sudo systemctl stop gitlab-runsvdir sudo systemctl disable gitlab-runsvdir sudo rm /usr/lib/systemd/system/gitlab-runsvdir.service sudo systemctl daemon-reload sudo systemctl reset-failed sudo gitlab-ctl uninstall
-
모든 데이터를 제거하려면:
sudo gitlab-ctl cleanse && sudo rm -r /opt/gitlab
-
-
패키지를 제거하세요 (GitLab FOSS를 설치한 경우
gitlab-ce
로 대체):# Debian/Ubuntu sudo apt remove gitlab-ee # RedHat/CentOS sudo yum remove gitlab-ee