コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Cloud Storage から直接イベントを受信する(Google Cloud コンソール)

このクイックスタートでは、認証されていない Cloud Run サービスで、Cloud Storage から直接イベントを受信する方法について説明します。

このクイックスタートでは Google Cloud コンソールを使用します。Google Cloud CLI の使用方法については、Cloud Storage から直接イベントを受信する(gcloud CLI)をご覧ください。

このクイックスタートでは、以下の操作を行います。

  1. イベントソースとなる Cloud Storage バケットを作成する。

  2. Cloud Run にサンプル サービスをデプロイしてイベントを受信する。

  3. イベントのフィルタリングとルーティングを行う Eventarc トリガーを作成する。

  4. Cloud Storage バケットにファイルをアップロードしてイベントを生成し、Cloud Run のログで確認する。


このタスクを Google Cloud コンソールで直接行う際の順を追ったガイダンスについては、[ガイドを表示] をクリックしてください。

ガイドを表示


以降のセクションでは、[ガイドを表示] をクリックした場合と同じ手順について説明します。

始める前に

組織が Google Cloud 環境に制約を適用すると、このドキュメントの一部の手順が正しく機能しない場合があります。その場合、パブリック IP アドレスやサービス アカウント キーを作成するようなタスクを完了できない場合があります。制約に関するエラーを返すリクエストを行う場合は、制約がある Google Cloud 環境でアプリケーションを開発する方法をご覧ください。

  1. Google Cloud アカウントにログインします。Google Cloud を初めて使用する場合は、アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  2. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  3. Cloud プロジェクトに対して課金が有効になっていることを確認します。詳しくは、プロジェクトで課金が有効になっているかどうかを確認する方法をご覧ください。

  4. Cloud Build and Eventarc API を有効にします。

    API を有効にする

  5. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  6. Cloud プロジェクトに対して課金が有効になっていることを確認します。詳しくは、プロジェクトで課金が有効になっているかどうかを確認する方法をご覧ください。

  7. Cloud Build and Eventarc API を有効にします。

    API を有効にする

Cloud Storage バケットを作成する

このクイックスタートでは、イベントソースとして Cloud Storage を使用します。

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

    [Cloud Storage] に移動

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

  3. バケットの名前を入力します。

    例: hello-bucket

  4. [次へ] をクリックします。

  5. [ロケーション タイプ] で [リージョン] を選択し、[us-central1(アイオワ)] を選択します。

  6. 他の値はデフォルトを使用します。

  7. [作成] をクリックします。

イベントソースの作成後、Cloud Run にイベント レシーバ サービスをデプロイできます。

イベント レシーバ サービスを Cloud Run にデプロイする

イベントを受信してロギングするサンプルの Cloud Run サービスをデプロイします。

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

    [Cloud Run] に移動

  2. [サービスの作成] をクリックします。

  3. [サービスの作成] フォームで、次の操作を行います。

    1. [既存のコンテナ イメージから 1 つのリビジョンをデプロイする] を選択します。

    2. [サンプル コンテナでテスト] をクリックします。

    3. [リージョン] リストで、サービスのロケーションとして [us-central1(アイオワ)] を選択します。

    4. [認証] には、[未認証の呼び出しを許可] を選択します。

    5. サンプル コンテナ イメージをデプロイするには、[作成] をクリックします。

hello サービスのデプロイには、最長で 2 分ほどかかる場合があります。

Eventarc トリガーを作成する

Eventarc トリガーは、Cloud Storage バケットからサンプルの Cloud Run サービスにイベントを送信します。

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

    [Eventarc] に移動

  2. [トリガーを作成] をクリックします。

  3. トリガー名を入力します。

    例: hello-trigger

  4. [イベント プロバイダ] リストで、[Google のソース] > [Cloud Storage] を選択します。

  5. [イベント] リストで、[直接] > [google.cloud.storage.object.v1.finald] を選択します。

  6. [バケット] で、先ほど作成した hello-bucket Cloud Storage バケットを選択します。

  7. プロンプトが表示されたら、次の権限を付与します。

    • Pub/Sub サービス アカウントに iam.serviceAccountTokenCreator ロール
    • Cloud Storage サービス アカウントに pubsub.publisher ロール
  8. サービスを呼び出すサービス アカウントとして、デフォルトのコンピューティング サービス アカウントを使用します。

  9. [イベントの宛先] リストで、[Cloud Run] を選択します。

  10. [Cloud Run サービス] で、以前に作成したサンプル hello サービスを選択します。

  11. [作成] をクリックします。

トリガーはすぐに作成されますが、トリガーが完全に機能するまでに 2 分ほどかかることがあります。

イベントを生成して表示する

イベントを生成し、Eventarc トリガーが想定どおり動作していることを確認します。

  1. イベントを生成するには:

    1. 「Hello World」というテキストを含むテキスト ファイルを random.txt という名前で保存します。

    2. Google Cloud コンソールで、[Cloud Storage] に移動します。

      [Cloud Storage] に移動

    3. 作成したストレージ バケットの名前をクリックします。

    4. [オブジェクト] タブで、[ファイルをアップロード] をクリックして random.txt ファイルをアップロードします。

    アップロードによりイベントが生成され、Cloud Run サービスはイベントのメッセージをロギングします。

  2. ログエントリを表示するには:

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

      [Cloud Run] に移動

    2. 作成したサービスの名前をクリックします。

    3. このサービスのすべてのリビジョンのログエントリを取得するには、[サービスの詳細] ページで [ログ] タブをクリックします。ログの重大度でフィルタリングできます。

    4. 次のようなログエントリを探します。

      Received event of type google.cloud.storage.object.v1.finalized. Event data: [...]

これで完了です。これで、イベント レシーバ サービスを Cloud Run にデプロイし、Eventarc トリガーを作成して、Cloud Storage からイベントを生成し、それを Cloud Run ログで確認できました。

クリーンアップ

このページで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、次の手順を行います。

サービスが使用されていない場合、Cloud Run の料金は発生しませんが、コンテナ イメージを Container Registry に保存すると料金が発生します。また、Cloud Run リソースを使用した場合や、ファイルを Cloud Storage バケットにファイルを保存した場合にも料金が発生します。

イメージの削除ストレージ バケットの削除サービスの削除を行うことができます。

Eventarc トリガーを削除するには:

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

    [Eventarc] に移動

  2. 作成したトリガーの名前をクリックします。

  3. [トリガーの詳細] ページで、[ 削除] をクリックします。

また、Google Cloud プロジェクトを削除して、料金が発生しないようにすることもできます。Cloud プロジェクトを削除すると、そのプロジェクト内で使用されているすべてのリソースに対する課金が停止します。

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

    [リソースの管理] に移動

  2. プロジェクト リストで、削除するプロジェクトを選択し、[削除] をクリックします。
  3. ダイアログでプロジェクト ID を入力し、[シャットダウン] をクリックしてプロジェクトを削除します。

次のステップ