我正在使用NodeJs和Firebase 工具为 本地开发环境构建Docker映像。由于我处于非交互模式,因此我使用了
firebase login:ci --interactive
Run Code Online (Sandbox Code Playgroud)
在我的 Dockerfile 上运行此命令时,它会很好地检索我的令牌,但是当我登录到我的 Google 帐户Localhost:9005后转到浏览器时,它似乎不起作用
无法访问此站点 localhost 拒绝连接。在 Google 上搜索 localhost 9005 ERR_CONNECTION_REFUSED
我也试过
firebase login --no-localhost
Run Code Online (Sandbox Code Playgroud)
但控制台一直让我使用 login:ci
错误:无法在非交互模式下运行登录。请参阅 login:ci 以生成在非交互式环境中使用的令牌。
简而言之,我只需要允许 Firebase进入我的环境。firebase login --no-localhost行不通(我已经像其他线程中提到的那样尝试过)
这是我的Dockerfile:
FROM node:carbon
USER root
RUN apt-get update && apt-get upgrade -y
# set user to avoid permission issues
# (see https://github.com/nodejs/node-gyp/issues/1236)
USER node
RUN mkdir /home/node/.npm-global
ENV PATH=/home/node/.npm-global/bin:$PATH
ENV NPM_CONFIG_PREFIX=/home/node/.npm-global …Run Code Online (Sandbox Code Playgroud) 根据Firebase Hosting docs,我应该能够在从服务器收到的响应上设置自定义标头。我试图X-Frame-Options在所有 html 文件上设置标头,但服务器根本不想发送此标头!这是我的 firebase.json 文件,如果我做错了什么,请告诉我:
{
"hosting": {
"public": "build",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"headers": [
{
"source": "**/*.html",
"headers": [
{
"key": "X-Frame-Options",
"value": "SAMEORIGIN"
}
]
}
]
}
}
Run Code Online (Sandbox Code Playgroud) 我一直在使用 Firebase 函数外壳 (firebase Experimental:functions:shell),我发现它非常适合测试 firebase 数据库和 http 侦听器。
但是,我必须在 shell 中复制粘贴测试代码,这有点烦人。
有什么办法可以在文件中编写一些 js 代码,然后使用 Firebase shell 运行完整的文件?不用复制粘贴?
firebase firebase-realtime-database google-cloud-functions firebase-cli
我在我的项目中使用Firebase Cloud Functions,并且我有很多它们,因此当我运行常规时,firebase deploy我超出了配额,因此一种选择是仅部署通过使用此网页firebase deploy --only functions:function1中提到的方式修改的功能。此方法仅适用于以以下开头的函数:但是当我尝试将它与这样的函数一起使用时:exports.funcName
function doesNotStartWithExports() {\n // Does something.\n}\nRun Code Online (Sandbox Code Playgroud)\n\n它不起作用。我使用firebase deploy --only functions:doesNotStartWithExports但我得到这个输出:
\xe2\x9a\xa0 functions: the following filters were specified but do not match any functions in the project: doesNotStartWithExports\nRun Code Online (Sandbox Code Playgroud)\n\n问题:如何部署不以导出开头的 Firebase 函数?
\n在我的终端中,我输入:
> MacBook-Pro-9:firecast $ firebase serve --only functions
Run Code Online (Sandbox Code Playgroud)
我调用实时数据库函数,例如:
myDatabaseFunction('old_data')
然后我就完成了。有没有办法退出正在运行的进程而不必完全关闭终端?
我们的应用程序将有数量有限的管理员用户,我想手动将管理员自定义声明添加到他们的帐户。因此,我希望能够直接通过 firebase 控制台或 CLI 在我的机器上本地手动添加自定义声明。此操作可能每年仅对一个用户发生一次,也可能根本不发生。如果不能通过 CLI 完成,是否有另一种方法可以在我的本地机器上完成?
尝试部署我的 Firebase 函数时(在切换计算机后)我收到错误并且无法部署。
错误:HTTP 错误:403,之前未在项目 563584335869 中使用服务使用 API 或它已被禁用。通过访问https://console.developers.google.com/apis/api/serviceusage.googleapis.com/overview?project=563584335869启用它,然后重试。如果您最近启用了此 API,请等待几分钟,让操作传播到我们的系统并重试。
我没有具有该 ID 的项目,并且在项目之间切换,它总是为我提供完全相同的项目 ID。该链接对我不起作用,但是当我输入我的项目 ID 而不是 563584335869 时,它就起作用了,并且启用了服务使用 API。
注销并重新登录并没有解决问题,firebase init.
有谁知道这可能是什么原因造成的?
使用命令将第二个项目添加到我的代码后$ firebase use --add second-project,我收到错误
部署您的功能时出现问题。验证您的项目是否在https://console.cloud.google.com/appengine上设置了 Google App Engine 实例,然后重试。如果此问题仍然存在,请联系支持人员。
错误:HTTP 错误:404,找不到应用程序“第二项目”。
当我跑步时$ firebase deploy。
我通过 Firebase 控制台为第二个项目添加了单独的目标和一个 Web 应用程序。
我应该检查什么来消除这个错误?
我正在尝试为生产和开发环境使用 Firestore、Functions、Storage 和 Hosting 设置 2 个全新的 Firebase 项目。我首先删除对旧 firebase 项目的引用: both firebase.json& .firebaserc。然后我跑去$ firebase init使用testFirebase 项目设置 Hosting、Functions、Storage 和 Firestore 。然后我设置 Firebase 别名以$ firebase use --add 在一个 React.js 项目中的两个项目之间切换。我 npm 构建并尝试使用: 进行部署$ firebase deploy --project:test,但主机不断尝试相同的最后一个文件并失败:Error: Task 5fcd... failed: retries exhausted after 6 attempts.。
我已经看到了一些与服务器暂时关闭有关的 Stackoverflow 答案,但我没有看到他们这边的任何服务器问题(https://status.firebase.google.com/),而且这种情况以前一直存在。在我参与的另一个项目中,我试图在同一个 Firebase 项目上部署到 2 个托管目标,但是一个失败了,另一个工作正常,我遇到了同样的错误(我从来没有找到另一个解决方案)比不使用多个目标。)
我还可以测试什么才能使其正常工作?它是否在我的 React.js 代码库中?(我最近部署到我过去的项目中)也许与我的 Firebase 设置过程有关?或者仍然与旧的 Firebase 项目有联系?我不知道下一步该看什么来解决这个问题。任何方向都会很棒,谢谢!
Ps:可能无法连接的奇怪之处在于,如果我只运行$ firebase deploy,它不会部署 firebaserc 中定义的默认测试环境,而是实时测试环境?
.firebaserc:
{
"projects": …Run Code Online (Sandbox Code Playgroud) firebase reactjs firebase-hosting google-cloud-firestore firebase-cli
我使用以下 firebase cli 命令来部署我的 firebase 功能
firebase deploy --only functions
Run Code Online (Sandbox Code Playgroud)
像这样部署时,如何限制函数的实例数量?看起来gcloud命令可以--max-instances选择限制实例,但在 firebase cli 中找不到类似的东西。