firebasenext.jsfirebase-hostingfirebase-tools

Error while deploy nextjs in firebase hosting - Invalid value specified for cpu


I am getting error while deploying nextjs 13 in firebase hosting through firebase-tools.

error - HTTP Error: 400, Could not create Cloud Run service ssrlyeanabot. spec.template.spec.containers.resources.limits.cpu: Invalid value specified for cpu. For the specified value, maxScale may not exceed 30.\nConsider running your workload in a region with greater capacity, decreasing your requested cpu-per-instance, or requesting an increase in quota for this region if you are seeing sustained usage near this limit, see https://cloud.google.com/run/quotas. Your project may gain access to further scaling by adding billing information to your account."

 Error: Failed to create function ssrlyeanabot in region us-central1

package.json -

{
  "name": "testing",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start",
    "lint": "next lint"
  },
  "dependencies": {
    "eslint": "8.36.0",
    "eslint-config-next": "13.2.4",
    "next": "13.2.4",
    "react": "18.2.0",
    "react-dom": "18.2.0"
  }
}

firebase.json

{
  "hosting": {
    "source": ".",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "frameworksBackend": {
      "region": "us-central1"
    }
  }
}

firebase tools version - 11.25.1

STEP TO REPRODUCE THIS PROBLEM

  1. npx create-next-app@latest
  2. firebase experiments:enable webframeworks
  3. firebase init hosting
  4. firebase deploy [done] IMP -> enable billing.

Please let me know, What should I do.


Solution

  • Add key maxInstances: <some number less 30> to frameworksBackend section of firebase.json file

    {
      "hosting": {
        "source": ".",
        "ignore": [
          "firebase.json",
          "**/.*",
          "**/node_modules/**"
        ],
        "frameworksBackend": {
          "region": "us-central1",
          "maxInstances": 2
        }
      }
    }
    

    Explanation:

    deployment is failing when Firebase CLI is trying to create a cloud function to support Nextjs Framework.

    using firebase --debug deploy it seems CLI is not passing maxInstance parameter to create cloud function which results in error.

    set maxInstances to specify maximum number of instance you need for this function ( should be less than your project quota - 30 )

    schema for firebase.json