web-dev-qa-db-ja.com

動作しているGitLabインストールのURLを変更するにはどうすればよいですか?

セットアップを完了し、GitLab v6.0.1のデフォルトインストールを実行しています(同様にアップグレードする予定です)。このガイドに正確に従って、「プロダクション」セットアップでした。

https://github.com/gitlabhq/gitlabhq/blob/master/doc/install/installation.md

さて、どのようにして安全に作業中のインストールのURLを変更しますか?

どうやら私たちのURLは非常に長く、新しいURLを思いついたようです。いくつかの構成ファイルを編集しましたが、「アプリケーションステータスチェック」レポートはすべて問題ありません。サーバーを再起動して、まだ機能していることを確認しました。

オリジナルのSSLを介してNginxに問題なくアクセスできます。 GitLabサイトを閲覧したり、リポジトリを作成したりすることができます。フォークとコミットは問題なく行えます。

すべて問題ないようです。しかし、これは私にとってネイティブな環境ではないため、GitLabサイトの名前を変更するためにすべてを行ったことを再確認したかったのです。

編集したファイルは次のとおりです。

/etc/hosts
  127.0.0.1  localhost
  10.0.0.10  wake.domain.com    wake
  10.0.0.10  git.domain.com     git

/home/git/gitlab/config/gitlab.yml
  production: &base
    gitlab:
      Host: git.domain.com

/home/git/gitlab-Shell/config.yml
  gitlab_url: "https://git.domain.com"
  ^- yes, we are on SSL and that is working, even on a new URL

/etc/nginx/sites-available/gitlab
  server {
    server_name git.domain.com
85
eduncan911

あなたはすべてを正しくやりました!

電子メールサーバーも同じサーバーであるかどうかに応じて、電子メールの構成を変更することもできます。 GitLabおよびadmin-emailによって送信されたメールのメール設定は gitlab.yml にあります。

29
Razer

GitLab Omnibus

Omnibusのインストールでは、少し異なります。

正しい Omnibusインストールの場所は次のとおりです。

/etc/gitlab/gitlab.rb
    external_url 'http://gitlab.example.com'

最後に、変更を適用するためにSudo gitlab-ctl reconfigureSudo gitlab-ctl restartを実行する必要があります。


私は間違った場所で変更を加えていましたが、それらは吹き飛ばされていました。

誤ったパスは次のとおりです。

/opt/gitlab/embedded/service/gitlab-Rails/config/gitlab.yml
/var/opt/gitlab/.gitconfig
/var/opt/gitlab/nginx/conf/gitlab-http.conf

次のような警告に注意してください。

# This file is managed by gitlab-ctl. Manual changes will be
# erased! To change the contents below, edit /etc/gitlab/gitlab.rb
# and run `Sudo gitlab-ctl reconfigure`.
150

実際、これは完全に正しいわけではありません。実稼働GitLabサーバーをhttp://からhttps://に移行し、上記のようにmostが機能しているが、https://serverにログインするとすべて正常に見えるので、このページにたどり着いてこの質問に自分で答えようとしました...プロジェクトまたはリポジトリを参照する場合を除き、SSHおよびHTTPの指示が表示されます...「http」と表示され、表示される指示も「http」と表示されます。

しかし、さらに編集することがいくつかありました。

/home/git/gitlab/config/gitlab.yml
  production: &base
    gitlab:
      Host: git.domain.com

      # Also edit these:
      port: 443
      https: true
...

そして

/etc/nginx/sites-available/gitlab
  server {
    server_name git.domain.com;

    # Also edit these:
    listen 443 ssl;
    ssl_certificate     /etc/ssl/certs/somecert.crt;
    ssl_certificate_key /etc/ssl/private/somekey.key;

...
7

これに関する詳細な注意事項があり、完全に私を助けました ここにあります

Jonathon Reinhartは既にキービットで回答しており、/ etc/gitlab/gitlab.rbを編集し、を変更しますexternal_urlそしてSudo gitlab-ctl reconfigure; Sudo gitlab-ctl restartを実行します

ただし、さらに先へ進む必要があり、上記でリンクしたドキュメントで説明しました。だから私は次のようになりました:

external_url 'https://gitlab.toilethumor.com'
nginx['ssl_certificate'] = "/www/ssl/star_toilethumor.com-chained.crt"
nginx['ssl_certificate_key'] = "/www/ssl/star_toilethumor.com.key"
nginx['proxy_set_headers'] = {
 "X-Forwarded-Proto" => "http",
 "CUSTOM_HEADER" => "VALUE"
}

上記で、このサーバーのSSLグッズの場所を明示的に宣言しました。そして、それはもちろん続きます

Sudo gitlab-ctl reconfigure
Sudo gitlab-ctl restart

また、オムニバスパッケージをhttpsに切り替えると、バンドルされたnginxはポート443でのみ機能します。すべてのものはリバースプロキシ経由で到達するため、この部分は潜在的に重要でした。

私がこれを通り抜けたとき、私は何かを台無しにして、実際のnginxログを見つけることは役に立ちました、これはそこに私を導きます:

Sudo gitlab-ctl tail nginx
1
James T Snell