Geoサイトの利用

データベースのレプリケーションを設定してGeoノードを設定したら、プライマリサイトと同じように一番近いGitLabサイトを使います。

セカンダリサイトに直接プッシュすることができ(HTTP、SSH、Git LFS の両方)、リクエストは代わりにプライマリサイトにプロキシされます。

セカンダリサイトにプッシュしたときの出力例

$ git push
remote:
remote: This request to a Geo secondary node will be forwarded to the
remote: Geo primary node:
remote:
remote:   ssh://git@primary.geo/user/repo.git
remote:
Everything up-to-date
note
SSHではなく HTTPS を使ってセカンダリにプッシュする場合、user:password@URLのように URL に認証情報を格納することはできません。代わりに、.netrc ファイル (Unix 系オペレーションシステム用) または_netrc (Windows 用) を使うことができます。この場合、クレデンシャルはプレーンテキストとして保存されます。クレデンシャルをよりセキュアに保存したい場合は、](https://www.gnu.org/software/inetutils/manual/html_node/The-_002enetrc-file.html)Git Credential Storage](https://www.gnu.org/software/inetutils/manual/html_node/The-_002enetrc-file.html)を使うことができます。

Geo セカンダリサイトからの Go モジュールの取得

いくつかの制限はありますが、セカンダリサイトから Go モジュールを取得できます:

  • Geo セカンダリサイトからデータを取得するには Git 設定(insteadOfを使用)が必要です。
  • 非公開プロジェクトの場合は、~/.netrcで認証の詳細を指定する必要があります。

詳しくはworking with projectsgo get documentationをご覧ください。