正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

Auto DevOpsをデプロイに備える

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

ベースドメインとデプロイ戦略を設定せずにAuto DevOpsを有効にすると、GitLabはアプリケーションを直接デプロイできません。したがって、Auto DevOpsを有効にする前に、それらを準備することをお勧めします。

デプロイ戦略

Auto DevOpsを使用してアプリケーションをデプロイする場合は、ニーズに最適な継続的デプロイ戦略を選択してください:

デプロイ戦略セットアップ開発手法
本番環境への継続的デプロイデフォルトブランチを本番環境に継続的にデプロイするためのAuto Deployを有効にします。本番環境への継続的デプロイ。
スケジュールされた増分ロールアウトを用いた本番環境への継続的デプロイINCREMENTAL_ROLLOUT_MODE変数をtimedに設定します。ロールアウト間に5分の遅延を設けて、本番環境に継続的にデプロイします。
Stagingステージへの自動デプロイ、本番環境への手動デプロイSTAGING_ENABLED1に、INCREMENTAL_ROLLOUT_MODEmanualに設定します。デフォルトブランチを継続的にステージングにデプロイし、本番環境には継続的デリバリーを行います。

デプロイ方法は、Auto DevOpsを有効にする際、または後から選択できます:

  1. GitLabで、プロジェクトの設定 > CI/CD > Auto DevOpsに移動します。
  2. デプロイ戦略を選択します。
  3. 変更を保存を選択します。

ダウンタイムとリスクを最小限に抑えるため、ブルー/グリーンデプロイ手法を使用してください。

Auto DevOpsのベースドメイン

Auto Review AppsAuto Deployを使用するには、Auto DevOpsのベースドメインが必要です。

ベースドメインを定義するには、次のいずれかを実行します:

  • プロジェクト、グループ、またはインスタンスで、設定に移動して追加します。
  • プロジェクトまたはグループで、環境変数としてKUBE_INGRESS_BASE_DOMAINを追加します。
  • インスタンスで、管理者エリアに移動し、設定 > CI/CD > Continuous Integration and Delivery(継続的インテグレーションとデリバリー)に移動して追加します。

ベースドメイン変数KUBE_INGRESS_BASE_DOMAINは、他の環境変数と優先順位が同じ変数に従います。

プロジェクトとグループでベースドメインを指定しない場合、Auto DevOpsはインスタンス全体のAuto DevOpsドメインを使用します。

Auto DevOpsには、ベースドメインに一致するワイルドカードDNS Aレコードが必要です。ベースドメインがexample.comの場合、次のようなDNSエントリが必要です:

*.example.com   3600     A     10.0.2.2

この場合、デプロイされたアプリケーションはexample.comから提供され、10.0.2.2はロードバランサー(一般的にはNGINX)のIPアドレスです(要件を参照)。DNSレコードのセットアップは、このドキュメントの範囲外です。詳細については、DNSプロバイダーにお問い合わせください。

または、設定なしで自動ワイルドカードDNSを提供する無料のパブリックサービス(nip.ioなど)を使用することもできます。nip.ioの場合、Auto DevOpsのベースドメインを10.0.2.2.nip.ioに設定します。

セットアップが完了すると、すべてのリクエストはロードバランサーに到達し、ロードバランサーはアプリケーションを実行しているKubernetesポッドにリクエストをルーティングします。