【问题标题】:Firebase cloud functions emulator times out after 30000 msFirebase 云功能模拟器在 30000 毫秒后超时
【发布时间】:2021-11-02 00:36:48
【问题描述】:

我正在尝试在使用 Cloud Functions 的项目上运行 firebase emulators:starts

它在端口 5001 启动本地服务器,如果我在 Chrome 中打开它,我会收到 { "status": "alive" } 响应,但 30 秒后它会因为“超时”而自行关闭。

✔  functions: Emulator started at http://localhost:5001
i  Shutting down emulators.
i  Stopping functions emulator

Error: TIMEOUT: Port 5001 was not active within 30000ms

该项目在部署到 Google Cloud 时运行良好,那么问题是什么?

我尝试使用 sudo 运行它,但没有帮助。

我使用的是带有 WSL (Ubuntu) 的 Windows 10。

【问题讨论】:

  • 你的目标是什么?增加超时时间还是找出超时原因?如果是第二种,你需要分享一些代码
  • 第二个,但我不确定我应该分享什么,这只是文档中的基本“hello world”示例。
  • 从什么返回?即使我不尝试调用任何端点,我也会收到超时错误,如果我让它运行 30 秒,它就会出错。
  • 您应该在 firebase-tools GitHub 上提交报告,以便与构建它的工程师取得联系。 Stack Overflow 在这里不太可能对您有所帮助,因为没有证据表明您的代码甚至正在执行。 github.com/firebase/firebase-tools
  • 我在尝试导入大型数据集时遇到了这个问题。难道没有额外的参数来延长超时会话吗?

标签: firebase google-cloud-functions


【解决方案1】:

正如this 评论中所讨论的,在firebase.json 中设置"host": "127.0.0.1" 为我解决了这个问题。

firebas.json 应该是这样的。

{
  "firestore": {
    "rules": "firestore.rules",
    "indexes": "firestore.indexes.json"
  },
  "emulators": {
    "firestore": {
      "port": 5000,
      "host": "127.0.0.1"

    },
    "ui": {
      "enabled": true
    }
  }
}

【讨论】:

  • 对我来说this one 也很有效。 0.0.0.0
【解决方案2】:

对任何firebase emulatorfirebase serve 使用选项--no-localhostfirebase loginhttps://firebase.google.com/docs/cli#sign-in-test-cli 上查看此注释 但我检查过,如果使用 WSL,这适用于所有命令

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-22
    • 2020-04-02
    • 2020-02-18
    • 1970-01-01
    • 2018-12-22
    • 2021-03-09
    • 1970-01-01
    相关资源
    最近更新 更多