パッチバージョンのユニバーサル・アップデート・ガイド

インストールするバージョンの選択

インストールしたいGitLabのタグ(バージョン)からこのアップデートガイドを見るようにしてください。 ほとんどの場合、これは一番番号の高いプロダクションタグ(rc が入っていない)であるべきです。GitLabの左上(メニューバーの下)にあるバージョンのドロップダウンでタグを選択できます。

0. バックアップ

万が一に備えてバックアップを取っておくと便利です。 インストール方法によって、バックアップコマンドは異なります。GitLabのバックアップと復元に関するドキュメントをご覧ください。

1. サーバー停止

sudo service gitlab stop

2. 安定版ブランチの最新コードの取得

以下のコマンドでは、LATEST_TAG をアップデートしたい最新の GitLab タグに置き換えてください。例えば、v8.0.3のようにします。すべてのタグの一覧を見るには、git tag -l 'v*.[0-9]' --sort='v:refname'を使います。必ずパッチバージョンのみをアップデートするようにしてください(現在のバージョンはcat VERSIONで確認してください)。

cd /home/git/gitlab

sudo -u git -H git fetch --all
sudo -u git -H git checkout -- Gemfile.lock db/structure.sql locale
sudo -u git -H git checkout LATEST_TAG -b LATEST_TAG

3. ライブラリ、マイグレーションなどのインストール

cd /home/git/gitlab

sudo -u git -H bundle install --without development test mysql --deployment

# Optional: clean up old gems
sudo -u git -H bundle clean

# Run database migrations
sudo -u git -H bundle exec rake db:migrate RAILS_ENV=production

# Compile GetText PO files
# Internationalization was added in `v9.2.0` so this command is only
# required for versions equal or major to it.
sudo -u git -H bundle exec rake gettext:compile RAILS_ENV=production

# Clean up assets and cache
sudo -u git -H bundle exec rake yarn:install gitlab:assets:clean gitlab:assets:compile cache:clear RAILS_ENV=production NODE_ENV=production NODE_OPTIONS="--max_old_space_size=4096"

4. GitLab Workhorseを対応するバージョンにアップデートします。

cd /home/git/gitlab

sudo -u git -H bundle exec rake "gitlab:workhorse:install[/home/git/gitlab-workhorse]" RAILS_ENV=production

5. Gitalyを対応するバージョンにアップデートします。

cd /home/git/gitlab

sudo -u git -H bundle exec rake "gitlab:gitaly:install[/home/git/gitaly,/home/git/repositories]" RAILS_ENV=production

6. GitLab Shellを対応するバージョンにアップデートします。

cd /home/git/gitlab-shell

sudo -u git -H git fetch --all --tags
sudo -u git -H git checkout v$(</home/git/gitlab/GITLAB_SHELL_VERSION) -b v$(</home/git/gitlab/GITLAB_SHELL_VERSION)
sudo -u git -H make build

7. GitLab Pagesを対応するバージョンに更新(Pagesを使用しない場合はスキップしてください。)

cd /home/git/gitlab-pages

sudo -u git -H git fetch --all --tags
sudo -u git -H git checkout v$(</home/git/gitlab/GITLAB_PAGES_VERSION)
sudo -u git -H make

8. インストール/アップデートgitlab-elasticsearch-indexer

インストール手順に従ってください。

9. 申し込み開始

sudo service gitlab start
sudo service nginx restart

10. 申込状況の確認

GitLabとその環境が正しく設定されているか確認してください:

cd /home/git/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

すべての項目が緑色になっていれば、アップグレード完了です!