Firebase 托管部署失败

Firebase hosting deployment failing

运行 firebase deploy 会 运行 几分钟然后给我一个超时错误 Error: ESOCKETTIMEDOUT

我之前已经成功部署了多次,除了我的项目的前端(用 React 编写)之外没有改变任何东西。

我有一个包含我的云函数的单独文件夹,它与 firebase deploy --only functions

完美部署

我尝试过使用 firebase deploy--except functions flag 进行常规部署,但没有成功。

还尝试更新 npm 和 firebase-tools

运行ning firebase deploy --debug 几分钟后产生以下错误:

[2019-09-12T16:25:59.115Z] FirebaseError: Task 6822eef99ebcce0df4baf9cc03e49b399d046c7cdfeb5b2a2ef2511c1df963d1 failed: retries exhausted after 6 attempts
[2019-09-12T16:25:59.115Z] [hosting][upload queue][FINAL] max=7278, min=7278, avg=7278, active=4, complete=2, success=1, errored=1, retried=25, total=6, elapsed=192701
[2019-09-12T16:25:59.127Z] FirebaseError: Task f98dce8e7830e8cd5881bc5e109453c208ff7fc643d61ad64ca34a7d098abc2c failed: retries exhausted after 6 attempts
[2019-09-12T16:25:59.127Z] FirebaseError: Task 5a7166c6cab1624c8a0c074fc535a23685c338be838012dced4006be3cc6dedd failed: retries exhausted after 6 attempts
[2019-09-12T16:25:59.128Z] FirebaseError: Task 76dd5b5551e5cd383875692455ff415bf8df56c97f67e4a3746e3c53c23478e1 failed: retries exhausted after 6 attempts
[2019-09-12T16:25:59.129Z] FirebaseError: Task 541bb1a8843dd0c62ea7e673f2260c85e0b456f35cfde358b6ab3be936e9c705 failed: retries exhausted after 6 attempts
[2019-09-12T16:25:59.211Z] Error: ESOCKETTIMEDOUT
    at ClientRequest.<anonymous> (/usr/local/lib/node_modules/firebase-tools/node_modules/request/request.js:816:19)
    at Object.onceWrapper (events.js:298:28)
    at ClientRequest.emit (events.js:209:13)
    at ClientRequest.EventEmitter.emit (domain.js:476:20)
    at TLSSocket.emitRequestTimeout (_http_client.js:690:9)
    at Object.onceWrapper (events.js:298:28)
    at TLSSocket.emit (events.js:209:13)
    at TLSSocket.EventEmitter.emit (domain.js:476:20)
    at TLSSocket.Socket._onTimeout (net.js:468:8)
    at listOnTimeout (internal/timers.js:531:17)

Error: Task 6822eef99ebcce0df4baf9cc03e49b399d046c7cdfeb5b2a2ef2511c1df963d1 failed: retries exhausted after 6 attempts

正如@thmsdnnr 提到的,这个错误似乎是由 firebase 的问题引起的。早上第一件事就是尝试新的部署,一切都通过了第一次尝试。

删除项目根目录下的隐藏文件夹。

.firebase/hosting.*.cache

正在删除 .firebase 文件夹并再次尝试 firebase 部署命令。一切似乎都很好。

正如@thmsdnnr 已经解释的那样,这确实是一个 firebase 问题,但也可能是由于您的一些问题造成的。 例如,对我来说是网速慢造成的。

此外,您可以随时删除“.firebase”文件夹和re-build您的项目以重新开始托管。

我也遇到过这样的问题

Error: Task 91525507ddf6d644ed40f9c46c3e30a2164f496acb1328512d4cf5eaf8d18768 failed: retries exhausted after 6 attempts
PS D:\React\amazon-clone> firebase deploy

但我修好了。将此更改放入您的 firebase.json 文件中:

{
  "hosting": {
    "public": "build",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      }
    ]
  }
}

{
  "hosting": {
    "public": "public",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      }
    ]
  }
}

它会正常工作。

发生这种情况有两个原因。

  1. 通过删除根文件夹中的 .firebase 文件夹可以解决问题。 如果这不起作用,
  2. 您的互联网连接速度可能会变慢,并且您项目中的文件可能会更大。所以尝试使用快速的互联网连接。

在网速较慢的情况下,如果您一次又一次地尝试部署,您会看到控制台上上传的文件数量减少了。这意味着您的文件正在上传,但需要太多时间,而且 firebase 正在耗尽。

我也在为这个问题苦苦挣扎。尝试了很多方法后,我解决了如下部署问题;

起初,我删除了节点模块,然后重新安装了一遍。我删除了 firebase 文件(.firebase,firebase.json)

然后我应用了它们;

  1. 通过"npm i -g firebase-tools"
  2. 更新 Firebase CLI
  3. 通过"firebase login"
  4. 登录您的帐户
  5. 通过"firebase init hosting"
  6. 初始化项目
  7. 最后通过 "firebase deploy --only hosting"
  8. 部署它

我能够通过这些步骤在 firebase 上部署我的项目。我希望别人的问题是这样解决的。

我建议您查看 here 了解详细信息。