クイックスタート: Google Cloud コンソールで Cloud Run functions の関数をデプロイする

このページでは、 Google Cloud コンソールを使用して Cloud Run functions の HTTP 関数をデプロイする方法について説明します。

始める前に

  1. 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.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. このガイドで既存のプロジェクトを使用する場合は、このガイドを完了するために必要な権限があることを確認します。新しいプロジェクトを作成した場合は、必要な権限がすでに付与されています。

  4. Verify that billing is enabled for your Google Cloud project.

  5. Enable the Artifact Registry, Cloud Build, Cloud Run Admin API, and Cloud Logging APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. このガイドで既存のプロジェクトを使用する場合は、このガイドを完了するために必要な権限があることを確認します。新しいプロジェクトを作成した場合は、必要な権限がすでに付与されています。

  8. Verify that billing is enabled for your Google Cloud project.

  9. Enable the Artifact Registry, Cloud Build, Cloud Run Admin API, and Cloud Logging APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  10. ドメイン制限の組織のポリシーでプロジェクトの未認証呼び出しが制限されている場合は、限定公開サービスのテストの説明に従って、デプロイされたサービスにアクセスする必要があります。

  11. Cloud Run の料金を確認するか、料金計算ツールで費用を見積もります。
  12. 必要なロール

    このクイックスタートを完了するために必要な権限を取得するには、管理者に次の IAM ロールを付与するよう依頼してください。

    ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

    必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

    Cloud Build サービス アカウントにプロジェクトへのアクセス権を付与する

    この動作をオーバーライドしない限り、Cloud Build は、ソースコードと Cloud Run リソースのビルドにデフォルトの Cloud Build サービス アカウントとして Compute Engine のデフォルトのサービス アカウントを自動的に使用します。

    Cloud Build がソースをビルドできるようにするには、プロジェクトの Cloud Build サービス アカウントに Cloud Run ビルダーroles/run.builder)のロールを付与します。

    gcloud projects add-iam-policy-binding PROJECT_ID \
        --member=serviceAccount:SERVICE_ACCOUNT_EMAIL_ADDRESS \
        --role=roles/run.builder

    PROJECT_ID は実際の Google Cloudプロジェクト ID に置き換え、SERVICE_ACCOUNT_EMAIL_ADDRESS は Cloud Build サービス アカウントのメールアドレスに置き換えます。Compute Engine のデフォルト サービス アカウントを Cloud Build サービス アカウントとして使用している場合は、サービス アカウントのメールアドレスに次の形式を使用します。

    PROJECT_NUMBER-compute@developer.gserviceaccount.com

    PROJECT_NUMBER は、使用する Google Cloudプロジェクト番号に置き換えます。

    プロジェクト ID とプロジェクト番号を確認する方法については、プロジェクトの作成と管理をご覧ください。

    Cloud Run ビルダーのロールを付与すると、反映されるまでに数分かかることがあります。

    関数をデプロイする

    関数をデプロイする手順は次のとおりです。

    1. Google Cloud コンソールで、[Cloud Run] ページに移動します。

      Cloud Run に移動

    2. [関数を作成] をクリックします。

    3. [サービス名] フィールドに、関数を記述するサービス名を入力します(my-nodejs-http-function など)。サービス名は、先頭を英字にして、49 文字以下の英字、数字、ハイフンで構成します。サービス名はハイフンで終わることはできません。また、リージョンとプロジェクトごとに一意にする必要があります。サービス名は後から変更することはできません。この名前は一般公開されます。

    4. [リージョン] リストで、デフォルト値の europe-west1 を使用するか、関数をデプロイするリージョンを選択します。

    5. [ランタイム] リストで、デフォルト値を使用するか、ランタイム バージョンを選択します。

    6. [認証] セクションで、[一般公開アクセスを許可] を選択します。これを選択する権限(Cloud Run 管理者ロール)がない場合は、サービスがデプロイされ、認証が必要になります。

    7. [作成] をクリックし、Cloud Run がプレースホルダ リビジョンを使用してサービスを作成するのを待ちます。コンソールの [ソース] タブにリダイレクトされ、関数のソースコードが表示されます。

    8. [ソース] タブで、[保存して再デプロイ] をクリックします。必要に応じて、[ペイロードを表示] をクリックして、受信したリクエスト オブジェクトを確認します。

    9. デプロイが完了すると、「URL」というテキストの横にコンテナの URL が表示されます。関数の結果を表示するには、[クリップボードにコピー] をクリックして URL をコピーし、ブラウザのアドレスバーに貼り付けます。

    Cloud Run のロケーション

    Cloud Run はリージョナルです。つまり、Cloud Run サービスを実行するインフラストラクチャは特定のリージョンに配置され、そのリージョン内のすべてのゾーンで冗長的に利用できるように Google によって管理されます。

    レイテンシ、可用性、耐久性の要件を満たしていることが、Cloud Run サービスを実行するリージョンを選択する際の主な判断材料になります。一般的には、ユーザーに最も近いリージョンを選択できますが、Cloud Run サービスで使用されている他の Google Cloudプロダクトのロケーションも考慮する必要があります。 Google Cloud プロダクトを複数のロケーションで使用すると、サービスのレイテンシだけでなく、コストにも影響を及ぼす可能性があります。

    Cloud Run は、次のリージョンで利用できます。

    ティア 1 料金を適用

    • 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

    ティア 2 料金を適用

    • africa-south1(ヨハネスブルグ)
    • asia-east2(香港)
    • asia-northeast3(ソウル、韓国)
    • asia-southeast1(シンガポール)
    • asia-southeast2 (ジャカルタ)
    • asia-south2(デリー、インド)
    • australia-southeast1(シドニー)
    • australia-southeast2(メルボルン)
    • europe-central2(ワルシャワ、ポーランド)
    • europe-west10(ベルリン)
    • 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(ラスベガス)

    Cloud Run サービスをすでに作成している場合は、Google Cloud コンソールの Cloud Run ダッシュボードにリージョンが表示されます。

    クリーンアップ

    Google Cloud アカウントで追加料金が発生しないようにするには、このクイックスタートでデプロイしたすべてのリソースを削除します。

    リポジトリを削除する

    デプロイされたサービスが使用されていない場合、Cloud Run の料金は発生しません。ただし、コンテナ イメージを Artifact Registry に保存した場合にも料金が発生する可能性があります。Artifact Registry リポジトリを削除するには、Artifact Registry ドキュメントのリポジトリを削除するの手順を行います。

    サービスを削除する

    Cloud Run サービスの費用は、リクエストを受け取るまでは発生しません。Cloud Run サービスを削除するには、次のいずれかの操作を行います。

    コンソール

    サービスを削除するには:

    1. Google Cloud コンソールで、Cloud Run の [サービス] ページに移動します。

      Cloud Run に移動

    2. 削除するサービスをサービスリストで探し、そのチェックボックスをクリックして選択します。

    3. [削除] をクリックします。これにより、サービスのすべてのリビジョンが削除されます。

    gcloud

    サービスを削除するには、次のコマンドを実行します。

    gcloud run services delete SERVICE --region REGION

    次のように置き換えます。

    • SERVICE: サービスの名前。
    • REGION: サービスの Google Cloud リージョン。

    テスト プロジェクトを削除する

    Google Cloud プロジェクトを削除すると、そのプロジェクト内のすべてのリソースに対する課金が停止します。プロジェクト内のすべての Google Cloud リソースを解放する手順は次のとおりです。

    1. In the Google Cloud console, go to the Manage resources page.

      Go to Manage resources

    2. In the project list, select the project that you want to delete, and then click Delete.
    3. In the dialog, type the project ID, and then click Shut down to delete the project.

    次のステップ