Cloud Build を使用すると、Cloud Run for Anthos へのビルドとデプロイを自動化できます。これにより、新しい commit が Git リポジトリの特定のブランチに push されるたびに、Cloud Build トリガーによりコードが自動的にビルドされ、デプロイされます。
Cloud Build トリガーを使用してコンテナをビルドした場合、Cloud Run for Anthos にデプロイした後に、Google Cloud コンソールにソース リポジトリの情報が表示されます。
始める前に
- Git リポジトリに
Dockerfile
が含まれているか、コードベースが Google Cloud Buildpacks でサポートされているいずれかの言語(Go、Node.js、Python、Java、NET Core)である必要があります。 -
Enable the Cloud Build と Cloud Source Repositories APIs.
Cloud Run for Anthos ユーザー インターフェースからの継続的デプロイを設定する
この手順は、新しいサービスまたは既存のサービスのどちらで継続的デプロイを設定するかによって若干異なります。該当するタブをクリックして詳細をご覧ください。
新しいサービス
Google Cloud コンソールで Cloud Run for Anthos に移動します。
[サービスを作成] をクリックします。
[サービスの設定] に設定を入力します。
[次へ] をクリックします。
[ソース リポジトリから新しいリビジョンを継続的にデプロイする] を選択します。
[Cloud Build の設定] をクリックします。
プロバイダとリポジトリを選択します。
- GitHub - まだ認証されていない場合は、[認証] をクリックして画面の指示に従います。デフォルトでは、リポジトリの接続は Cloud Build GitHub アプリから行われますが、GitHub リポジトリを Cloud Source Repositories にミラーリングすることもできます。その場合は、[詳細オプション] をクリックして、[Cloud Source Repositories を使用して GitHub リポジトリをミラーリングする] をオンにします。詳細
- Bitbucket - まだ認証されていない場合は、[認証] をクリックして画面の指示に従います。
- Cloud Source Repositories
[次へ] をクリックします。
[ビルド構成] ステップのオプションを入力します。
- ブランチ - トリガーの実行時に使用するソースを指定します。ここには正規表現を含めることができます。一致したブランチが自動的に検証され、入力の下に示されます。なお、ブランチが 1 つだけ一致した場合、作成後にトリガーが自動的に実行されます。
ビルドタイプ
Docker を使用してリポジトリを作成し、そこに Dockerfile が含まれている場合は、[Dockerfile] を選択します。[ソースの場所] は、Dockerfile の場所と名前を示します。このディレクトリが Docker ビルド コンテキストとして使用されます。すべてのパスは、現在のディレクトリを基準とした相対パスにする必要があります。
それ以外の場合は、[Google Cloud Buildpacks] を選択します。Buildpack コンテキストを使用してディレクトリを指定して、サーバーを起動するコマンドを入力します(オプションでエントリポイントを指定することもできます)。例: Python の場合は
gunicorn -p :8080 main:app
、Java の場合はjava -jar target/myjar.jar
と入力します。デフォルトの動作を使用する場合は空白のままにします。
[保存] をクリックします。
選択した設定を確認します。
[作成] をクリックします。
[サービスの詳細] ページにリダイレクトされます。このページで、継続的デプロイの設定の進捗状況を追跡できます。
すべてのステップが完了したら、追加のオプションを確認します。
- [継続的デプロイを編集] ボタン。
- ビルド履歴。
- [リビジョンの詳細] セクションに含まれるソースの詳細。
既存のサービス
Google Cloud コンソールで Cloud Run for Anthos に移動します。
サービスリストでサービスを見つけてクリックします。
[継続的デプロイの設定] をクリックします。
プロバイダとリポジトリを選択します。
- GitHub - まだ認証されていない場合は、[認証] をクリックして画面の指示に従います。デフォルトでは、リポジトリの接続は Cloud Build GitHub アプリから行われますが、GitHub リポジトリを Cloud Source Repositories にミラーリングすることもできます。その場合は、[詳細オプション] をクリックして、[Cloud Source Repositories を使用して GitHub リポジトリをミラーリングする] をオンにします。詳細
- Bitbucket - まだ認証されていない場合は、[認証] をクリックして画面の指示に従います。
- Cloud Source Repositories
[次へ] をクリックします。
[ビルド構成] ステップのオプションを入力します。
- ブランチ - トリガーの実行時に使用するソースを指定します。ここには正規表現を含めることができます。一致したブランチが自動的に検証され、入力の下に示されます。なお、ブランチが 1 つだけ一致した場合、作成後にトリガーが自動的に実行されます。
ビルドタイプ
Docker を使用してリポジトリを作成し、そこに Dockerfile が含まれている場合は、[Dockerfile] を選択します。[ソースの場所] は、Dockerfile の場所と名前を示します。このディレクトリが Docker ビルド コンテキストとして使用されます。すべてのパスは、現在のディレクトリを基準とした相対パスにする必要があります。
それ以外の場合は、[Google Cloud Buildpacks] を選択します。Buildpack コンテキストを使用してディレクトリを指定して、サーバーを起動するコマンドを入力します(オプションでエントリポイントを指定することもできます)。例: Python の場合は
gunicorn -p :8080 main:app
、Java の場合はjava -jar target/myjar.jar
と入力します。デフォルトの動作を使用する場合は空白のままにします。
[保存] をクリックします。
ページが再読み込みされて、継続的デプロイの設定の進行状況が表示されます。
すべてのステップが完了したら、追加のオプションを確認します。
- [継続的デプロイを編集] ボタン。
- ビルド履歴。
- [リビジョンの詳細] セクションに含まれるソースの詳細。
継続的デプロイを手動で設定する
UI ではなく手動で行う必要がある場合は、継続的デプロイを手動で設定するをご覧ください。
既存の Cloud Build トリガーを Cloud Run for Anthos サービスに関連付ける
既存の Cloud Build トリガーがある場合は、[サービスの詳細] ページでそのトリガーをサービスに関連付けて、Google Cloud コンソールの機能([継続的デプロイを編集] ボタンと [ビルド履歴] グラフ)を利用できます。
それには、キーとして gcb-trigger-id を使用し、値として Cloud Build トリガーの(トリガー名ではなく)一意の ID を設定したラベルを追加する必要があります。ラベルの設定方法については、こちらの手順をご覧ください。