render.com 重新部署失败,Nuxt 致命错误

Failed redeploy on render.com, Nuxt Fatal Error

推送到 Github 的更新很好,但托管似乎无法重新部署,我不明白为什么。我已经按照错误消息的建议尝试 运行 npm rebuild 但没有运气

有一件事看起来有点奇怪,它检测的节点版本是 14.17.0,但是这个项目的代码库是 v10,之前的成功回复是 v10,当我 运行 node -v 在本地项目目录中它说它仍然是 v10 所以我不确定混淆在哪里。 Repos package.json 也表示 v10.

我也知道缺少 firebase 依赖项,但这在之前的所有重新部署中都是一致的,包括成功的重新部署。

非常感谢任何解决此问题的指导!

尝试部署时给出日志(通过 render.com 部署)

Jun 7 01:16:02 PM  ==> Checking out commit 8eaca7e15d53c95fda380c8805aef7eed400cd0d in branch master
Jun 7 01:16:15 PM  ==> Downloading cache...
Jun 7 01:16:31 PM  ==> Downloaded 223MB in 5s. Extraction took 9s.
Jun 7 01:16:33 PM  ==> Detected Node version 14.17.0
Jun 7 01:16:33 PM  ==> Running build command 'yarn install && yarn run post_easy_build'...
Jun 7 01:16:33 PM  yarn install v1.22.5
Jun 7 01:16:33 PM  warning package-lock.json found. Your project contains lock files generated by tools other than Yarn. It is advised not to mix package managers in order to avoid resolution inconsistencies caused by unsynchronized lock files. To clear this warning, remove package-lock.json.
Jun 7 01:16:33 PM  [1/5] Validating package.json...
Jun 7 01:16:33 PM  [2/5] Resolving packages...
Jun 7 01:16:34 PM  warning Resolution field "core-js-compat@3.4.7" is incompatible with requested version "core-js-compat@^3.6.2"
Jun 7 01:16:34 PM  [3/5] Fetching packages...
Jun 7 01:16:35 PM  info fsevents@2.1.2: The platform "linux" is incompatible with this module.
Jun 7 01:16:35 PM  info "fsevents@2.1.2" is an optional dependency and failed compatibility check. Excluding it from installation.
Jun 7 01:16:35 PM  info fsevents@1.2.12: The platform "linux" is incompatible with this module.
Jun 7 01:16:35 PM  info "fsevents@1.2.12" is an optional dependency and failed compatibility check. Excluding it from installation.
Jun 7 01:16:35 PM  [4/5] Linking dependencies...
Jun 7 01:16:35 PM  warning " > @firebase/firestore@1.13.0" has unmet peer dependency "@firebase/app@0.x".
Jun 7 01:16:35 PM  warning " > @firebase/firestore@1.13.0" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "@firebase/firestore > @firebase/firestore-types@1.10.1" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/database@0.3.20" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/firestore@1.2.2" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/functions@0.4.6" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/messaging@0.3.19" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/performance@0.2.1" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/storage@0.2.15" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/auth > @firebase/auth-types@0.6.1" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/auth > @firebase/auth-types@0.6.1" has unmet peer dependency "@firebase/util@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/database > @firebase/database-types@0.3.11" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/firestore > @firebase/firestore-types@1.2.1" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/functions > @firebase/messaging-types@0.2.11" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/performance > @firebase/installations@0.1.0" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/storage > @firebase/storage-types@0.2.11" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/storage > @firebase/storage-types@0.2.11" has unmet peer dependency "@firebase/util@0.x".
Jun 7 01:16:35 PM  warning "firebase > @firebase/performance > @firebase/installations > @firebase/installations-types@0.1.0" has unmet peer dependency "@firebase/app-types@0.x".
Jun 7 01:16:35 PM  warning " > vue-loader@15.9.1" has unmet peer dependency "css-loader@*".
Jun 7 01:16:35 PM  warning " > vue-loader@15.9.1" has unmet peer dependency "webpack@^3.0.0 || ^4.1.0 || ^5.0.0-0".
Jun 7 01:16:35 PM  warning " > vue-google-autocomplete@1.1.0" has unmet peer dependency "vue@>=2".
Jun 7 01:16:35 PM  warning " > vuejs-datepicker@1.6.2" has unmet peer dependency "vue@^2.6.10".
Jun 7 01:16:35 PM  warning " > eslint-loader@2.2.1" has unmet peer dependency "webpack@>=2.0.0 <5.0.0".
Jun 7 01:16:35 PM  warning " > eslint-plugin-vue@4.7.1" has incorrect peer dependency "eslint@^3.18.0 || ^4.0.0".
Jun 7 01:16:35 PM  warning " > sass-loader@7.3.1" has unmet peer dependency "webpack@^3.0.0 || ^4.0.0".
Jun 7 01:16:41 PM  [5/5] Building fresh packages...
Jun 7 01:16:41 PM  success Saved lockfile.
Jun 7 01:16:41 PM  Done in 8.07s.
Jun 7 01:16:41 PM  yarn run v1.22.5
Jun 7 01:16:41 PM  $ yarn run easy:build
Jun 7 01:16:42 PM  $ nuxt build --config-file src/easymediakit/nuxt.config.js
Jun 7 01:16:43 PM  
Jun 7 01:16:43 PM   FATAL  Failed to load gRPC binary module because it was not installed for the current system
Jun 7 01:16:43 PM  Expected directory: node-v83-linux-x64-glibc
Jun 7 01:16:43 PM  Found: [node-v64-linux-x64-glibc]
Jun 7 01:16:43 PM  This problem can often be fixed by running "npm rebuild" on the current system
Jun 7 01:16:43 PM  Original error: Cannot find module '/opt/render/project/src/node_modules/firebase/node_modules/grpc/src/node/extension_binary/node-v83-linux-x64-glibc/grpc_node.node'
Jun 7 01:16:43 PM  Require stack:
Jun 7 01:16:43 PM  - /opt/render/project/src/node_modules/firebase/node_modules/grpc/src/grpc_extension.js
Jun 7 01:16:43 PM  - /opt/render/project/src/node_modules/firebase/node_modules/grpc/src/client_interceptors.js
Jun 7 01:16:43 PM  - /opt/render/project/src/node_modules/firebase/node_modules/grpc/src/client.js
Jun 7 01:16:43 PM  - /opt/render/project/src/node_modules/firebase/node_modules/grpc/index.js
Jun 7 01:16:43 PM  - /opt/render/project/src/node_modules/firebase/node_modules/@firebase/firestore/dist/index.node.cjs.js
Jun 7 01:16:43 PM  - /opt/render/project/src/node_modules/firebase/firestore/dist/index.cjs.js
Jun 7 01:16:43 PM  - /opt/render/project/src/src/easymediakit/plugins/firebase.js
Jun 7 01:16:43 PM  - /opt/render/project/src/src/app/store/api.js
Jun 7 01:16:43 PM  - /opt/render/project/src/src/easymediakit/nuxt.config.js
Jun 7 01:16:43 PM  - /opt/render/project/src/node_modules/@nuxt/config/dist/config.js
Jun 7 01:16:43 PM  - /opt/render/project/src/node_modules/@nuxt/cli/dist/cli-index.js
Jun 7 01:16:43 PM  - /opt/render/project/src/node_modules/@nuxt/cli/dist/cli.js
Jun 7 01:16:43 PM  - /opt/render/project/src/node_modules/nuxt/bin/nuxt.js
Jun 7 01:16:43 PM  
Jun 7 01:16:43 PM    Error: Failed to load gRPC binary module because it was not installed for the current system
Jun 7 01:16:43 PM    Expected directory: node-v83-linux-x64-glibc
Jun 7 01:16:43 PM    Found: [node-v64-linux-x64-glibc]
Jun 7 01:16:43 PM    This problem can often be fixed by running "npm rebuild" on the current system
Jun 7 01:16:43 PM    Original error: Cannot find module 'node_modules/firebase/node_modules/grpc/src/node/extension_binary/node-v83-linux-x64-glibc/grpc_node.node'
Jun 7 01:16:43 PM    Require stack:
Jun 7 01:16:43 PM    - node_modules/firebase/node_modules/grpc/src/grpc_extension.js
Jun 7 01:16:43 PM    - node_modules/firebase/node_modules/grpc/src/client_interceptors.js
Jun 7 01:16:43 PM    - node_modules/firebase/node_modules/grpc/src/client.js
Jun 7 01:16:43 PM    - node_modules/firebase/node_modules/grpc/index.js
Jun 7 01:16:43 PM    - node_modules/firebase/node_modules/@firebase/firestore/dist/index.node.cjs.js
Jun 7 01:16:43 PM    - node_modules/firebase/firestore/dist/index.cjs.js
Jun 7 01:16:43 PM    - src/easymediakit/plugins/firebase.js
Jun 7 01:16:43 PM    - src/app/store/api.js
Jun 7 01:16:43 PM    - src/easymediakit/nuxt.config.js
Jun 7 01:16:43 PM    - node_modules/@nuxt/config/dist/config.js
Jun 7 01:16:43 PM    - node_modules/@nuxt/cli/dist/cli-index.js
Jun 7 01:16:43 PM    - node_modules/@nuxt/cli/dist/cli.js
Jun 7 01:16:43 PM    - node_modules/nuxt/bin/nuxt.js
Jun 7 01:16:43 PM    at Object.<anonymous> (node_modules/firebase/node_modules/grpc/src/grpc_extension.js:53:17)
Jun 7 01:16:43 PM    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1097:10)
Jun 7 01:16:43 PM    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1097:10)
Jun 7 01:16:43 PM  
Jun 7 01:16:43 PM  
Jun 7 01:16:43 PM     ╭─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
Jun 7 01:16:43 PM     │                                                                                                                                         │
Jun 7 01:16:43 PM     │   ✖ Nuxt Fatal Error                                                                                                                    │
Jun 7 01:16:43 PM     │                                                                                                                                         │
Jun 7 01:16:43 PM     │   Error: Failed to load gRPC binary module because it was not installed for the                                                         │
Jun 7 01:16:43 PM     │   current system                                                                                                                        │
Jun 7 01:16:43 PM     │   Expected directory: node-v83-linux-x64-glibc                                                                                          │
Jun 7 01:16:43 PM     │   Found: [node-v64-linux-x64-glibc]                                                                                                     │
Jun 7 01:16:43 PM     │   This problem can often be fixed by running "npm rebuild" on the current system                                                        │
Jun 7 01:16:43 PM     │   Original error: Cannot find module                                                                                                    │
Jun 7 01:16:43 PM     │   '/opt/render/project/src/node_modules/firebase/node_modules/grpc/src/node/extension_binary/node-v83-linux-x64-glibc/grpc_node.node'   │
Jun 7 01:16:43 PM     │   Require stack:                                                                                                                        │
Jun 7 01:16:43 PM     │   -                                                                                                                                     │
Jun 7 01:16:43 PM     │   /opt/render/project/src/node_modules/firebase/node_modules/grpc/src/grpc_extension.js                                                 │
Jun 7 01:16:43 PM     │   -                                                                                                                                     │
Jun 7 01:16:43 PM     │   /opt/render/project/src/node_modules/firebase/node_modules/grpc/src/client_interceptors.js                                            │
Jun 7 01:16:43 PM     │   - /opt/render/project/src/node_modules/firebase/node_modules/grpc/src/client.js                                                       │
Jun 7 01:16:43 PM     │   - /opt/render/project/src/node_modules/firebase/node_modules/grpc/index.js                                                            │
Jun 7 01:16:43 PM     │   -                                                                                                                                     │
Jun 7 01:16:43 PM     │   /opt/render/project/src/node_modules/firebase/node_modules/@firebase/firestore/dist/index.node.cjs.js                                 │
Jun 7 01:16:43 PM     │   - /opt/render/project/src/node_modules/firebase/firestore/dist/index.cjs.js                                                           │
Jun 7 01:16:43 PM     │   - /opt/render/project/src/src/easymediakit/plugins/firebase.js                                                                        │
Jun 7 01:16:43 PM     │   - /opt/render/project/src/src/app/store/api.js                                                                                        │
Jun 7 01:16:43 PM     │   - /opt/render/project/src/src/easymediakit/nuxt.config.js                                                                             │
Jun 7 01:16:43 PM     │   - /opt/render/project/src/node_modules/@nuxt/config/dist/config.js                                                                    │
Jun 7 01:16:43 PM     │   - /opt/render/project/src/node_modules/@nuxt/cli/dist/cli-index.js                                                                    │
Jun 7 01:16:43 PM     │   - /opt/render/project/src/node_modules/@nuxt/cli/dist/cli.js                                                                          │
Jun 7 01:16:43 PM     │   - /opt/render/project/src/node_modules/nuxt/bin/nuxt.js                                                                               │
Jun 7 01:16:43 PM     │                                                                                                                                         │
Jun 7 01:16:43 PM     ╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Jun 7 01:16:43 PM  
Jun 7 01:16:43 PM  error Command failed with exit code 1.
Jun 7 01:16:43 PM  info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
Jun 7 01:16:43 PM  error Command failed with exit code 1.
Jun 7 01:16:43 PM  info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
Jun 7 01:16:43 PM  ==> Build failed 

render.com 的这个页面来看,他们似乎支持最新的 LTS 版本:https://render.com/docs/node-version

By default, Render uses the latest LTS version of Node.

查看节点的当前版本:https://nodejs.org/en/about/releases/

看起来 Node.js v14 是这里的方法。您可以使用 Node 10 在本地 运行ning 项目,但如果您的平台使用 12/14,请尝试遵循这些版本。
正如上面链接的文档中所述,您当然可以将特定版本的 Node 设置为 .node-version.


(我也推荐使用 package.json 的引擎)

"engines": {
  "node": ">=12 <13"
}

您不能更新您的项目以使用 Node 14 吗?甚至节点 12?


一件重要的事情 npm run build 是为了 target: servernpm run generate 是为了 target: static 而不是别的。不要把它们混在一起。
至于调试目的,我建议首先尝试在本地 运行,然后尝试将其部署到 render.com
PS: nvm 有助于快速安装多个版本的 Node。


此外,请确保您使用 Git 进行了比较,以确保这不会因为某处的代码更改而中断。