contentみんたくみんたくの技術ブログFirebaseで複数のサイトをHostingする方法2020年5月2日GCPFirebaseで複数のサイトをHostingし、プロジェクトのリソースを共有する方法をメモしておきます。1つのFirebaseプロジェクトで複数サイトを登録することで、プロジェクト内のリソース(AuthenticationやStorageなど)を共有することができます。Hostingによって紐付けられデプロイされている状態として進めていきます。initを実行して環境設定から行ってください。CLIがインストールされてない場合は、以下のコマンドからインストールしてください。Hosting画面にてサイトを追加する必要があります。Hosting画面の詳細設定から「別のサイトを追加」を押下します。追加したサイト名を入力し、「サイトの追加」を押下します。複数のサイトを登録したら、それぞれにデプロイターゲットを作成する必要があります。デプロイターゲットを作成し、サイトのホスティングを適用するには、プロジェクトのディレクトリのルートから以下のコマンドを実行します。プロジェクトがsampleで先程のサイトの追加にsample-subを追加した場合、既にsample-siteがあり、sample-site2を追加する場合は、以下のコマンドで作成します。・sample-siteの登録サイト追加前の既にHostingされているsampleに対して、sample-siteを作成します。先程、サイト追加したsample-subに対して、新しく追加するsample-site2を作成します。sample-sub上記コマンドで作成が完了すると、.firebasercファイルに以下のように自動で追加されているのが確認できます。次に、先程作成したターゲットにあわせてfirebase.jsonを編集していきます。これでターゲットに合わせたデプロイが可能となります。以下のコマンドで、指定したターゲットのリソースのみのデプロイします。hosting:target-name先程の例だと以下のコマンドを実行することで、それぞれをデプロイすることができます。undefined」エラーで、デプロイが失敗する場合がありましたが、以下を参考にして解決しました。firebase/firebase-tools複数サイトのプロジェクトが別々の場合に発生しました。登録する複数サイトが別々のプロジェクトであっても、同じFirebasenoプロジェクト内であれば、.firebaercとfirebase.jsonを共通に持っておく必要があります。それぞれ別のプロジェクトだからそのプロジェクトだけのデプロイターゲットを作成するのではなく、FirebaseプロジェクトのHosting全てを設定ファイルを記載することで解決できました。コメントをキャンセルメールアドレスが公開されることはありません。コメントデータの処理方法の詳細はこちらをご覧ください。