커뮤니티 에디션에서 오프닝 이디션으로 자체 컴파일 설치로 업그레이드

Tier: Free, Premium, Ultimate Offering: Self-managed
note
과거에는 커뮤니티 에디션에서 엔터프라이즈 에디션으로 업그레이드하기 위한 별도의 문서를 사용했습니다. 이러한 문서는 엔터프라이즈 에디션 소스 코드의 doc/update 디렉토리에서 찾을 수 있습니다.

버전을 업그레이드하려면 예를 들어 11.8에서 11.9로 변경하지 않고 (커뮤니티 또는 엔터프라이즈) 사용 중인 GitLab 에디션을 변경하지 않고 싶다면 소스에서 업그레이드 문서를 참조하세요.

일반적인 업그레이드 단계

이 가이드는 올바르게 구성되고 테스트된 GitLab 커뮤니티 에디션 설치를 갖고 있다고 가정합니다. 문제가 발생하거나 질문이 있으면 support@gitlab.com으로 문의하세요.

모든 예제에서 사용 중인 버전에 맞는 엔터프라이즈 에디션 브랜치로 EE_BRANCH을, 커뮤니티 에디션 브랜치로 CE_BRANCH을 대체하세요. 브랜치 이름은 엔터프라이즈 에디션의 경우 major-minor-stable-ee, 커뮤니티 에디션의 경우 major-minor-stable 형식을 사용합니다. 예를 들어 11.8.0인 경우 다음 브랜치를 사용해야 합니다:

  • 엔터프라이즈 에디션: 11-8-stable-ee
  • 커뮤니티 에디션: 11-8-stable

0. 백업

문제가 발생할 수 있으니 백업을 만드세요:

cd /home/git/gitlab
sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production

1. 서버 중지

sudo service gitlab stop

2. 엔터프라이즈 에디션 코드 가져오기

cd /home/git/gitlab
sudo -u git -H git remote add -f ee https://gitlab.com/gitlab-org/gitlab.git
sudo -u git -H git checkout EE_BRANCH

3. 라이브러리, 마이그레이션 등 설치

cd /home/git/gitlab

# 설치 중 또는 이전 업그레이드 중에 이러한 작업을 수행하지 않았다면
sudo -u git -H bundle config set --local deployment 'true'
sudo -u git -H bundle config set --local without 'development test kerberos'

# 젬 업데이트
sudo -u git -H bundle install

# 선택 사항: 이전 젬 정리
sudo -u git -H bundle clean

# 데이터베이스 마이그레이션 실행
sudo -u git -H bundle exec rake db:migrate RAILS_ENV=production

# 노드 종속성 업데이트 및 자산 재컴파일
sudo -u git -H bundle exec rake yarn:install gitlab:assets:clean gitlab:assets:compile RAILS_ENV=production NODE_ENV=production NODE_OPTIONS="--max_old_space_size=4096"

# 캐시 정리
sudo -u git -H bundle exec rake cache:clear RAILS_ENV=production

4. gitlab-elasticsearch-indexer 설치

Tier: Premium, Ultimate Offering: Self-managed

설치 지침에 따르세요.

5. 어플리케이션 시작

sudo service gitlab start
sudo service nginx restart

6. 어플리케이션 상태 확인

GitLab 및 해당 환경이 올바르게 구성되었는지 확인하세요:

sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production

빠트린 부분이 없는지 확인하려면 다음 명령어로 더 철저한 확인을 실행하세요:

sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production

모든 항목이 녹색인 경우, 축하합니다! 업그레이드가 완료되었습니다.

문제가 발생했나요? 이전 버전(커뮤니티 에디션)으로 되돌리기

1. 코드를 이전 버전으로 되돌리기

cd /home/git/gitlab
sudo -u git -H git checkout CE_BRANCH

2. 백업에서 복원

cd /home/git/gitlab
sudo -u git -H bundle exec rake gitlab:backup:restore RAILS_ENV=production

버전별 작업

특정 버전의 GitLab은 커뮤니티 에디션에서 엔터프라이즈 에디션으로 업그레이드할 때 추가 작업을 수행해야 할 수 있습니다. 그런 경우 해당 버전별로 목록이 나열됩니다.