クイックスタート: Git リポジトリから Cloud Run にデプロイする
このページでは、git リポジトリから Cloud Run への継続的デプロイの方法を説明します。
このタスクを Google Cloud コンソールで直接行う際の順を追ったガイダンスについては、「ガイドを表示」をクリックしてください。
このプロセスの詳しい手順については、Cloud Build を使用した Git からの継続的デプロイをご覧ください。
始める前に
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
-
Make sure that you have the following role or roles on the project: Cloud Run Admin, Cloud Run Source Developer, Logs Viewer
Check for the roles
-
In the Google Cloud console, go to the IAM page.
Go to IAM - Select the project.
-
In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.
- For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.
Grant the roles
-
In the Google Cloud console, go to the IAM page.
IAM に移動 - プロジェクトを選択します。
- [ アクセスを許可] をクリックします。
-
[新しいプリンシパル] フィールドに、ユーザー ID を入力します。 これは通常、Google アカウントのメールアドレスです。
- [ロールを選択] リストでロールを選択します。
- 追加のロールを付与するには、 [別のロールを追加] をクリックして各ロールを追加します。
- [保存] をクリックします。
-
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
-
Make sure that you have the following role or roles on the project: Cloud Run Admin, Cloud Run Source Developer, Logs Viewer
Check for the roles
-
In the Google Cloud console, go to the IAM page.
Go to IAM - Select the project.
-
In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.
- For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.
Grant the roles
-
In the Google Cloud console, go to the IAM page.
IAM に移動 - プロジェクトを選択します。
- [ アクセスを許可] をクリックします。
-
[新しいプリンシパル] フィールドに、ユーザー ID を入力します。 これは通常、Google アカウントのメールアドレスです。
- [ロールを選択] リストでロールを選択します。
- 追加のロールを付与するには、 [別のロールを追加] をクリックして各ロールを追加します。
- [保存] をクリックします。
-
-
Enable the Cloud Build API.
ドメイン制限の組織のポリシーでプロジェクトの未認証呼び出しが制限されている場合は、限定公開サービスのテストの説明に従って、デプロイされたサービスにアクセスする必要があります。
-
サービス ID にサービス アカウント ユーザーのロールが付与されていることを確認します。デフォルトでは、サービス ID は Compute Engine のデフォルトのサービス アカウントです。
ロールを付与する
サービス ID リソースに対するアクセス権を付与するには、
gcloud iam service-accounts add-iam-policy-binding
コマンドを使用します。ハイライト表示された変数は、適切な値に置き換えてください。gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT_EMAIL \ --member="PRINCIPAL" \ --role="roles/iam.serviceAccountUser"
次のように置き換えます。
- SERVICE_ACCOUNT_EMAIL: サービス ID として使用しているサービス アカウントのメールアドレス。たとえば次のようなものです。
- Compute Engine のデフォルトのサービス アカウント:
PROJECT_NUMBER-compute@developer.gserviceaccount.com
- 作成したサービス アカウント:
SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
- Compute Engine のデフォルトのサービス アカウント:
- PRINCIPAL: ユーザー ID。通常は、Google アカウントのメールアドレスです。
- SERVICE_ACCOUNT_EMAIL: サービス ID として使用しているサービス アカウントのメールアドレス。たとえば次のようなものです。
- Cloud Run の料金を確認するか、料金計算ツールで費用を見積もります。
テンプレート リポジトリに移動します。
Node.js
github.com/GoogleCloudPlatform/cloud-run-microservice-template-nodejs に移動します。
Python
github.com/GoogleCloudPlatform/cloud-run-microservice-template-python に移動します。
Go
github.com/GoogleCloudPlatform/cloud-run-microservice-template-go に移動します。
Java
github.com/GoogleCloudPlatform/cloud-run-microservice-template-java に移動します。
[Use this template] をクリックします。
[Create a new repository] を選択します。
フォームにリポジトリ名を入力します。
[Create repository from template] をクリックします。
Google Cloud コンソールで、[Cloud Run] ページに移動します。
メニューから [サービス] を選択し、[コンテナをデプロイ] をクリックします。
[サービスを作成] で、[リポジトリから継続的にデプロイする] オプションが選択されていることを確認します。
フォームで [Cloud Build の設定] をクリックします。
右側のパネルで
[リポジトリ] で、新しく作成したリポジトリを選択します。まだ認証していない場合は、認証が必要になることがあります。[リポジトリ プロバイダ] フィールドの [認証] リンクを使用します。
GitHub と Google Cloud インタラクティビティに関する確認同意書を確認します。
[次へ] をクリックします。
[ビルドタイプ] で [Google Cloud Buildpacks] を選択します。
[保存] をクリックします。
[サービスの作成] フォームで、次の操作を行います。
サービスの名前を確認します。リポジトリ名が自動的に入力されます。
[リージョン] プルダウン メニューで、サービスを配置するリージョンを選択します。
[認証] で、[公開アクセスを許可する] を選択します。これを選択する権限(Cloud Run 管理者ロール)がない場合は、サービスがデプロイされた後で認証が必要になります。
[作成] をクリックしてサンプル リポジトリを Cloud Run にデプロイし、デプロイの完了を待ちます。
表示された URL リンクをクリックして、デプロイされたコンテナを実行します。
asia-east1
(台湾)asia-northeast1
(東京)asia-northeast2
(大阪)asia-south1
(ムンバイ、インド)europe-north1
(フィンランド)低 CO2
europe-north2
(ストックホルム)低 CO2
europe-southwest1
(マドリッド)低 CO2
europe-west1
(ベルギー)低 CO2
europe-west4
(オランダ)低 CO2
europe-west8
(ミラノ)europe-west9
(パリ)低 CO2
me-west1
(テルアビブ)northamerica-south1
(メキシコ)us-central1
(アイオワ)低 CO2
us-east1
(サウスカロライナ)us-east4
(北バージニア)us-east5
(コロンバス)us-south1
(ダラス)低 CO2
us-west1
(オレゴン)低 CO2
africa-south1
(ヨハネスブルグ)asia-east2
(香港)asia-northeast3
(ソウル、韓国)asia-southeast1
(シンガポール)asia-southeast2
(ジャカルタ)asia-south2
(デリー、インド)australia-southeast1
(シドニー)australia-southeast2
(メルボルン)europe-central2
(ワルシャワ、ポーランド)europe-west10
(ベルリン)低 CO2
europe-west12
(トリノ)europe-west2
(ロンドン、イギリス)低 CO2
europe-west3
(フランクフルト、ドイツ)europe-west6
(チューリッヒ、スイス)低 CO2
me-central1
(ドーハ)me-central2
(ダンマーム)northamerica-northeast1
(モントリオール)低 CO2
northamerica-northeast2
(トロント)低 CO2
southamerica-east1
(サンパウロ、ブラジル)低 CO2
southamerica-west1
(サンティアゴ、チリ)低 CO2
us-west2
(ロサンゼルス)us-west3
(ソルトレイクシティ)us-west4
(ラスベガス)commit をリポジトリのメインブランチに push します。
Cloud Run サービスを更新して、更新のステータスを確認します。
Google Cloud コンソールで Cloud Run に移動します。
削除するサービスをサービスリストで探し、そのチェックボックスをクリックして選択します。
[削除] をクリックします。これにより、サービスのすべてのリビジョンが削除されます。
- SERVICE: サービスの名前。
- REGION: サービスの Google Cloud リージョン。
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
テンプレートからリポジトリを作成する
リポジトリを作成するには:
リポジトリからデプロイする
リポジトリからデプロイする手順は次のとおりです。
Cloud Run のロケーション
Cloud Run はリージョナルです。つまり、Cloud Run サービスを実行するインフラストラクチャは特定のリージョンに配置され、そのリージョン内のすべてのゾーンで冗長的に利用できるように Google によって管理されます。
レイテンシ、可用性、耐久性の要件を満たしていることが、Cloud Run サービスを実行するリージョンを選択する際の主な判断材料になります。一般的には、ユーザーに最も近いリージョンを選択できますが、Cloud Run サービスで使用されている他の Google Cloudプロダクトのロケーションも考慮する必要があります。 Google Cloud プロダクトを複数のロケーションで使用すると、サービスのレイテンシだけでなく、コストにも影響を及ぼす可能性があります。
Cloud Run は、次のリージョンで利用できます。
ティア 1 料金を適用
ティア 2 料金を適用
Cloud Run サービスをすでに作成している場合は、Google Cloud コンソールの Cloud Run ダッシュボードにリージョンが表示されます。
サービスを更新する
サービスに変更を加えるには:
Cloud Run では需要に応じてコンテナ インスタンスが自動的にスケーリングされます。料金は、リクエストの処理中に使用した CPU、メモリ、ネットワークに対してのみ発生します。
クリーンアップ
Google Cloud アカウントに追加料金が課されるのを回避するには、このクイックスタートでデプロイしたリソースをすべて削除します。
リポジトリを削除する
デプロイされたサービスが使用されていない場合、Cloud Run の料金は発生しません。ただし、コンテナ イメージを Artifact Registry に保存するための料金が発生する可能性があります。Artifact Registry リポジトリを削除するには、Artifact Registry ドキュメントのリポジトリを削除するの手順を行います。
サービスを削除する
Cloud Run サービスの費用は、リクエストを受け取るまでは発生しません。Cloud Run サービスを削除するには、次のいずれかの操作を行います。
コンソール
サービスを削除するには:
gcloud
サービスを削除するには、次のコマンドを実行します。
gcloud run services delete SERVICE --region REGION
次のように置き換えます。
テスト プロジェクトを削除する
Google Cloud プロジェクトを削除すると、そのプロジェクト内のすべてのリソースに対する課金が停止します。プロジェクト内のすべての Google Cloud リソースを解放する手順は次のとおりです。