상대 URL로 GitLab 설치
Offering: GitLab Self-Managed
GitLab에 대한 상대 URL 구성은 Geo와 관련된 알려진 문제와 테스트 제한이 있습니다. GitLab은 자체 (서브)도메인에 설치해야 하지만, 여러 이유로 가능하지 않을 때가 있습니다. 이 문서는 소스에서 설치할 때 상대 URL로 GitLab을 실행하는 방법을 설명합니다.
GitLab에 대한 상대 URL 구성은 Geo와 관련된 알려진 문제와 테스트 제한이 있습니다. 이미 상대 URL을 사용 중이고 서브도메인으로 마이그레이션하려는 경우 마이그레이션 가이드를 참조하세요.
GitLab은 자체 (서브)도메인에 설치해야 하지만, 여러 이유로 가능하지 않을 때가 있습니다. 그런 경우 GitLab을 예를 들어 https://example.com/gitlab과 같은 상대 URL 하에 설치할 수도 있습니다.
이 문서는 소스에서 설치할 때 상대 URL로 GitLab을 실행하는 방법을 설명합니다. 소스에서 설치하지 않는 경우 상대 URL을 활성화하려면 Linux 패키지 또는 GitLab 차트의 상대 URL 문서를 확인하세요.
GitLab을 처음 설치하는 경우 이 가이드를 설치 가이드와 함께 사용합니다.
상대 URL이 얼마나 깊이 중첩될 수 있는지에 대한 제한이 없습니다. 예를 들어 문제 없이 /foo/bar/gitlab/git에서 GitLab을 제공할 수 있습니다.
기존 GitLab 설치에서 URL을 변경하면 모든 원격 URL이 변경되므로, GitLab 인스턴스를 가리키는 로컬 리포지터리에서 수동으로 편집해야 합니다.
상대 URL로 GitLab을 제공하기 위해 변경해야 하는 구성 파일 목록은 다음과 같습니다:
/home/git/gitlab/config/initializers/relative_url.rb/home/git/gitlab/config/gitlab.yml/home/git/gitlab/config/puma.rb/home/git/gitlab-shell/config.yml/etc/default/gitlab
모든 변경 사항을 적용한 후에는 에셋을 다시 컴파일하고 GitLab을 재시작해야 합니다.
상대 URL 요구 사항#
GitLab을 상대 URL로 구성하는 경우, 에셋(JavaScript, CSS, 글꼴 및 이미지 포함)을 다시 컴파일해야 하며, 이는 많은 CPU와 메모리 리소스를 소비할 수 있습니다. 메모리 부족 오류를 방지하려면 컴퓨터에 최소 2GB의 RAM이 있어야 합니다. 이상적으로는 4GB RAM과 4개 또는 8개의 CPU 코어가 있어야 합니다.
자세한 내용은 요구 사항 문서를 참조하세요.
GitLab에서 상대 URL 활성화#
상대 URL에 대한 웹 서버 구성 파일을 변경하지 마세요. 상대 URL 지원은 GitLab Workhorse로 구현됩니다.
이 프로세스는 다음을 가정합니다:
- GitLab이
/gitlab에서 제공됩니다 - GitLab이 설치된 디렉터리는
/home/git/입니다
GitLab에서 상대 URL을 활성화하려면:
-
선택 사항. 리소스가 부족한 경우 다음 명령으로 GitLab 서비스를 종료하여 일시적으로 메모리를 확보할 수 있습니다:
sudo service gitlab stop -
/home/git/gitlab/config/initializers/relative_url.rb를 생성합니다cp /home/git/gitlab/config/initializers/relative_url.rb.sample \ /home/git/gitlab/config/initializers/relative_url.rb그리고 다음 줄을 변경합니다:
config.relative_url_root = "/gitlab" -
/home/git/gitlab/config/gitlab.yml을 편집하고 다음 줄의 주석을 해제하거나 변경합니다:relative_url_root: /gitlab -
/home/git/gitlab/config/puma.rb를 편집하고 다음 줄의 주석을 해제하거나 변경합니다:ENV['RAILS_RELATIVE_URL_ROOT'] = "/gitlab" -
/home/git/gitlab-shell/config.yml을 편집하고 다음 줄에 상대 경로를 추가합니다:gitlab_url: http://127.0.0.1/gitlab -
설치 가이드에 명시된 대로 제공된 systemd 서비스 또는 init 스크립트와 기본값 파일을 복사했는지 확인합니다. 그런 다음
/etc/default/gitlab을 편집하고gitlab_workhorse_options에서-authBackend설정을 다음과 같이 읽도록 설정합니다:-authBackend http://127.0.0.1:8080/gitlab[!note] 사용자 정의 init 스크립트를 사용하는 경우 필요에 따라 이전 GitLab Workhorse 설정을 편집해야 합니다.
-
변경 사항이 적용되도록 GitLab을 재시작합니다.
GitLab에서 상대 URL 비활성화#
상대 URL을 비활성화하려면:
/home/git/gitlab/config/initializers/relative_url.rb를 제거합니다- 2단계부터 이전 단계를 따르고 GitLab URL을 상대 경로가 포함되지 않은 URL로 설정합니다.
