GitLab を相対 URL でインストールします。

GitLabは独自の(サブ)ドメインにインストールすることを推奨していますが、様々な理由でそうできない場合もあります。その場合、GitLabは相対URLの下にインストールすることもできます。例えば、https://example.com/gitlab.

この文書では、GitLabをソースからのインストール用に相対URLで実行する方法を説明します。公式のLinuxパッケージを使う場合は、手順が異なります。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の要件

相対URLでGitLabを設定した場合、アセット(JavaScript、CSS、フォント、画像を含む)を再コンパイルする必要があり、CPUやメモリのリソースを大量に消費する可能性があります。メモリ不足のエラーを避けるため、お使いのコンピュータに少なくとも2GBのRAMが必要です。4GBのRAMと、4つまたは8つのCPUコアを推奨します。

詳しくは要件ドキュメントをご覧ください。

GitLabで相対URLを有効にします。

note
相対URLに関してウェブサーバーの設定ファイルを変更しないでください。相対URLのサポートはGitLab Workhorseによって実装されています。

以下の手順に従ってGitLabで相対URLを有効にする前に、いくつかの前提条件があります:

  • GitLabは以下の環境で提供されています。/gitlab
  • GitLabがインストールされているディレクトリは次のとおりです。/home/git/

以下のすべての手順に従ってください:

  1. オプション。リソースが不足した場合は、以下のコマンドでGitLabサービスをシャットダウンすることで、一時的にメモリを解放することができます:

    sudo service gitlab stop
    
  2. 作成/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"
    
  3. /home/git/gitlab/config/gitlab.yml を編集し、以下の行をアンコメント/変更します:

    relative_url_root: /gitlab
    
  4. /home/git/gitlab/config/puma.rb を編集し、以下の行をアンコメント/変更します:

    ENV['RAILS_RELATIVE_URL_ROOT'] = "/gitlab"
    
  5. /home/git/gitlab-shell/config.yml を編集し、次の行に相対パスを追加します:

    gitlab_url: http://127.0.0.1/gitlab
    
  6. インストールガイドに書かれているように、付属の systemd サービスか init スクリプト、defaults ファイルをコピーしていることを確認してください。次に、/etc/default/gitlab を編集し、gitlab_workhorse_options-authBackend の設定を以下のようにします:

    -authBackend http://127.0.0.1:8080/gitlab
    
    note
    カスタムのinitスクリプトを使っている場合は、上記のGitLab Workhorseの設定を必要に応じて編集してください。
  7. 変更を有効にするためにGitLabを再起動してください。

GitLabで相対URLを無効にします。

相対URLを無効にするには

  1. 削除/home/git/gitlab/config/initializers/relative_url.rb

  2. 上記2.から同様に、GitLabのURLを相対パスを含まないものに設定します。