Firebase App Hosting
Firebase App Hosting は、動的 Next.js アプリと Angular アプリの開発とデプロイを効率化します。組み込みのフレームワーク サポート、GitHub との統合、Authentication、Cloud Firestore、Vertex AI in Firebase などの他の 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 コンソールからログと指標にアクセスし、カスタム ドメインを追加して、ロールアウトを手動でトリガーします。 |
仕組み
- Firebase コンソールまたは Firebase CLI を使用して、Firebase GitHub アプリをリポジトリに承認してインストールします。
- 引き続き Firebase コンソールまたは Firebase CLI で、継続的デプロイ用のリポジトリとライブブランチを持つ Firebase App Hosting バックエンドを作成します。App Hosting は、変更がターゲット ブランチに push されたときに、トラフィックの 100% にすぐにロールアウトするように、バックエンドのデフォルトのロールアウト ポリシーを作成します。
- コミットがライブブランチに push されると、Google Cloud Developer Connect は Firebase App Hosting にイベントを送信します。
- このイベントに応答して、Firebase App Hosting は最新の commit の新しいロールアウトを開始します。
- Firebase App Hosting は、commit に新しい Cloud Build Job を作成します。このジョブでは、オープンソースの Buildpack がアプリケーションで使用されているフレームワークを決定し、アプリケーションに適したコンテナと構成(環境変数、シークレット、最小インスタンス数、最大インスタンス数、同時実行メモリ、CPU など)を作成します。
- 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 プロジェクトをまだ作成していない場合は、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