Firebase App Hosting

Firebase App Hosting は、動的な Next.js と Angular アプリケーションの開発とデプロイを合理化します。組み込みフレームワークのサポート、GitHub インテグレーション、他の Firebase プロダクト(Authentication、Cloud Firestore、Vertex AI for Firebase など)との統合を提供します。

使ってみる

 

主な機能

GitHub インテグレーション git commit さえあれば、アプリの新しいバージョンをロールアウトできます。App Hosting は、特定のブランチに push するたびに自動的にデプロイできます。
Google Cloud によるバックアップ App Hosting は Google Cloud 利用規約を使用し、信頼できる Google Cloud プロダクトにアプリをデプロイします。アプリは Cloud Build でビルドされ、Cloud Run で配信され、Cloud CDN でキャッシュされます。Cloud Secret Manager などの統合サービスは、API キーを安全に保護します。
AI を活用した機能を大規模にリリースする Gemini を使用する AI サンプルから始めます。Cloud Secret Manager で API エンドポイントの API キーを保護し、App Hosting のストリーミング サポートを利用して、アプリに生成 AI 機能を追加しても、初期読み込み時間を高速に保ちます。
Firebase コンソールのインテグレーション Firebase コンソールでビルドとロールアウトをモニタリングすることで、常に状況を把握できます。Firebase コンソールからログと指標にアクセスし、カスタム ドメインを追加して、手動でロールアウトをトリガーします。

仕組み

  1. Firebase コンソールまたは Firebase CLI を使用して、Firebase GitHub アプリを承認し、リポジトリにインストールします。
  2. 引き続き Firebase コンソールまたは Firebase CLI で、継続的デプロイのためにリポジトリとライブブランチを使用して Firebase App Hosting バックエンドを作成します。App Hosting は、ターゲット ブランチに変更が push されるとすぐにバックエンドが 100% のトラフィックにロールアウトするデフォルトのロールアウト ポリシーを作成します。
  3. commit がライブブランチに push されると、Google Cloud Developer Connect は Firebase App Hosting にイベントを送信します。
  4. このイベントに応答して、Firebase App Hosting は最新の commit の新しいロールアウトを開始します。
  5. Firebase App Hosting は commit 用に新しい Cloud Build ジョブを作成します。このジョブでは、オープンソースの Buildpack は、アプリケーションで使用されるフレームワークを決定し、アプリケーションに適したコンテナと構成(環境変数、シークレット、最小または最大インスタンス、同時実行メモリ、CPU など)を作成します。
  6. Cloud Build ジョブが完了すると、Firebase App Hosting 専用の Artifact Registry リポジトリにコンテナが保存されます。Firebase App Hosting はイメージと構成を使用して、Cloud Run サービスに新しい Cloud Run リビジョンを追加します。Cloud Run のリビジョンが正常であることが確認されると、Firebase App Hosting はすべての新しいリクエストが新しい Cloud Run リビジョンを指すようにトラフィック構成を変更します。この時点でロールアウトは完了です
  7. Firebase App Hosting でホストされているウェブサイトにリクエストが送信されると、Cloud CDN を有効にした Google Cloud ロードバランサによってリクエストが処理されます。キャッシュに保存されていないリクエストは送信元サーバーに送信され、送信元サーバーから Cloud Run サービスに送信されます。

実装パス

Firebase を設定する Firebase プロジェクトをまだ作成していない場合は作成し、Blaze お支払いプランが有効になっていることを確認します。
App Hosting を設定する Firebase コンソールまたは Firebase CLI を使用して、App Hosting バックエンドを作成します。これはアプリのマネージド リソースのコレクションであり、アプリの GitHub リポジトリへの接続も含まれます。
アプリを管理、モニタリングする App Hosting バックエンドの作成が完了すると、アプリは無料のサブドメインで使用可能になり、Firebase コンソールでロールアウトの詳細を確認できます。Google Cloud コンソールを使用して、ログを表示および検索できます。
アプリを開発する App Hosting は、commit がライブブランチに push されるたびに新しいロールアウトを自動的に開始します。

次のステップ

  • アプリのデプロイを開始する
  • ホスト型アプリを Firebase Authentication と Google AI の機能と統合する App Hosting Codelab をお試しください。Next.js | Angular