Firebase App Hosting
Firebase App Hosting は、動的なウェブアプリの開発とデプロイを効率化します。GitHub との統合や、Authentication、Cloud Firestore、Firebase AI Logic などの他の Firebase プロダクトとの統合が可能です。App Hosting には、Next.js と Angular の組み込みの事前構成済みサポートと 、さまざまな一般的なウェブ フレームワークの幅広いサポートが用意されています。
主な機能
| 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 コンソールから手動でロールアウトをトリガーします。 |
仕組み
- Firebase コンソールまたは Firebase CLI を使用して、リポジトリで Firebase GitHub アプリを承認してインストールします。
- Firebase コンソールまたは Firebase CLI で、継続的デプロイ用のリポジトリとライブブランチを使用して、 Firebase App Hosting バックエンドを作成します。 App Hosting は、変更がターゲット ブランチに push されるとすぐにトラフィックの 100% にロール アウトするデフォルトのロールアウト ポリシーをバックエンドに作成します。
- commit がライブブランチに push されると、Google Cloud Developer Connect は Firebase App Hostingにイベントを送信します。
- このイベントに応答して、Firebase App Hosting はリポジトリに接続されたバックエンドの新しいビルドを作成します。
- まず、Firebase App Hosting は Cloud Build build for your commit の新しいビルドを作成します。このジョブでは、 Google Cloud ビルドパック が、アプリケーションで使用されているフレームワークを特定して、アプリケーションに適したコンテナと構成( 環境変数、シークレット、最小インスタンス数または最大インスタンス数、同時実行、 メモリ、CPU、VPC 構成など)を作成します。 詳細については、 App Hostingビルドプロセスをご覧ください。
- Cloud Build ジョブが完了すると、コンテナは Firebase App Hosting 専用の Artifact Registry リポジトリに保存されます。 Firebase App Hosting は、イメージと構成を使用して、 Cloud Run サービスに新しい Cloud Run リビジョンを追加します。
- Cloud Run リビジョンが完了して正常であることが確認されると、Firebase App Hosting はトラフィック構成を変更して、すべての新しいリクエストを新しい Cloud Run リビジョンに転送します。これで、ロールアウトは完了です。
- 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 されるたびに、App Hosting は自動的に新しいロールアウトを開始します。 |
次のステップ
- アプリのデプロイを開始する。
- ホストされているアプリを Firebase Authentication と Gemini API 機能に統合する App Hosting Codelab を試す: Next.js | Angular。
- App Hosting でサポートされているさまざまな コミュニティ サポート フレームワーク について確認するApp Hosting。