GAミント至上主義

Web Monomaniacal Developer.

FirebaseにNuxtをデプロイするときにmaxInstancesを指定する

こちらの記事で高額請求怖くなったのでメモ。

Next.jsをFirebaseにデプロイしたら高額請求がきて貯金がなくなりかけた話 #googlecloud - Qiita

自社用管理画面側でNuxtのアプリをFirebaseにデプロイしている。

Nuxtのバージョンはこれ。

"nuxt": "^3.8.0",

Cloud ConsoleでCloud Functionの設定で手動で変えてみたが、デプロイするとまたデフォルトの100に戻ってしまうのでデプロイ時の設定が必須だった。

変更前

Nuxtの公式ドキュメントのFirebaseを見ると、親切にもmaxInstancesの設定例があるのに気づいた。

そのため参考記事のようにfirebase.configではなくnuxt.configを利用する。

Deploy Nuxt to Firebase

nuxt.config.ts

export default defineNuxtConfig({
// 省略
  nitro: {
    firebase: {
      gen: 2,
      httpsOptions: { minInstances:0, maxInstances: 3 },
      nodeVersion: "20",
    },
  },
})

管理画面で常にアクセスされるわけではなく、費用節約を重視し、minは0で指定。

これでデプロイしたら無事反映された

変更後