无法进行 Firebase 部署 - 错误:指定的 Firebase 无效

Posted

技术标签:

【中文标题】无法进行 Firebase 部署 - 错误:指定的 Firebase 无效【英文标题】:Unable to do Firebase deploy - Error: Invalid Firebase specified 【发布时间】:2016-09-15 13:04:13 【问题描述】:

在完成firebase.com/docs 上的所有必要步骤并将我的应用程序升级到更新版本后,我仍然无法使用firebase-tools 运行部署它。

$ firebase deploy MY_APP_NAME

提供以下堆栈:

/usr/local/lib/node_modules/firebase-tools/node_modules/configstore/index.js:53
                throw err;
                ^

Error: EACCES: permission denied, open '/Users/myusername/.config/configstore/update-notifier-firebase-tools.json'
You don't have access to this file.

at Error (native)
at Object.fs.openSync (fs.js:634:18)
at Object.fs.readFileSync (fs.js:502:33)
at Object.create.all.get (/usr/local/lib/node_modules/firebase-tools/node_modules/configstore/index.js:34:26)
at Object.Configstore (/usr/local/lib/node_modules/firebase-tools/node_modules/configstore/index.js:27:44)
at new UpdateNotifier (/usr/local/lib/node_modules/firebase-tools/node_modules/update-notifier/index.js:34:17)
at module.exports (/usr/local/lib/node_modules/firebase-tools/node_modules/update-notifier/index.js:123:23)
at Object.<anonymous> (/usr/local/lib/node_modules/firebase-tools/bin/firebase:5:48)
at Module._compile (module.js:541:32)
at Object.Module._extensions..js (module.js:550:10)

阅读此Can't deploy to firebase . Get ENOENT error 我尝试应用 sudo,这有助于更多 - 并遵循:$ sudo firebase deploy

在 3-5 秒的明显停顿后

Error: Invalid Firebase specified.

Having trouble? Try firebase deploy --help

但是这样做:$ sudo firebase list

表明项目存在:

┌────────────────────────┬───────────────────────┬─────────────┐
│ Name                   │ Project ID / Instance │ Permissions │
├────────────────────────┼───────────────────────┼─────────────┤
│ MY_APP_NAME (current)  │ MY_APP_NAME           │ Owner

任何想法都会受到赞赏。

我有 NPM 3.8.6 @ Node v6.0.0 @ Mac 10.11

【问题讨论】:

完成上述操作后,我需要注销并重新登录 CLI。 【参考方案1】:

我最近在尝试部署到生产时突然遇到了这个问题,它只是突然显示此消息并且尝试上述方法不起作用。

这就是我的工作。

首先我通过以下方式注销了我的 firebase 帐户:

firebase logout

然后再次登录

firebase login

然后重新选择项目

firebase use project_name

我现在可以正确部署,而不会再次出现问题。

【讨论】:

谢谢!即使我已正确登录并且项目存在,我仍收到此任何人消息:“无法获取 Firebase 项目 xxxxx。请确保该项目存在并且您的帐户有权访问它”。退出并重新登录就可以了。【参考方案2】:

在将项目从旧的 firebase 仪表板导入到新的控制台时,我遇到了同样的问题(Invalid Firebase Specified),并使用以下终端命令修复它,

firebase use --clear //清除任何以前为firebase-tools选择的项目

firebase use --add // 使用新别名添加新导入的项目

使用别名清除并重新添加项目后,我能够使用成功部署它

firebase deploy.

【讨论】:

【参考方案3】:

正如Chris Raynor 提到的,首先解决您的权限问题:

sudo chown -R $USER ~/.config/configstore

我的升级导致了同样的错误(“指定的 Firebase 无效”)。我发现清除并重新添加项目解决了我的问题。

在迁移到新版本的 firebase 并遵循初始交互过程后,我运行了以下命令。

firebase use --clear

firebase use --add

“添加”选项给了我以下交互式提示:

? Which project do you want to add? my-project-name
? What alias do you want to use for this project? (e.g. staging) staging

清除并重新添加后,我的部署命令按照文档工作

firebase deploy

最终的工作输出如下所示:

i  deploying database, hosting
i  hosting: preparing public directory for upload...
✔  hosting: 34 files uploaded successfully
i  starting release process (may take several minutes)...

✔  Deploy complete!

【讨论】:

【参考方案4】:

首先,修复您的权限错误非常简单:

sudo chown -R $USER ~/.config/configstore

那么,部署命令是

firebase deploy --project MY_PROJECT_ID

其中 MY_PROJECT_ID 是 firebase list 表的“项目 ID/实例”列中的第一个条目。查看firebase use --help 命令为目录设置默认项目

【讨论】:

我遇到了同样的问题,我只使用 Firebase 的托管功能。我试过firebase deployfirebase deploy --only hosting,甚至firebase deploy --project 'project-name'(在项目目录中应该需要)。它们都不适用于 Firebase 3.0。 顺便说一句,我已经升级到最新的 npm 版本的 firebase-tools 并且我已经将旧的 firebase 存储库“导入”到了一个闪亮的新存储库中……firebase init 认出了它。只是无法部署到它! @ken 你能弄明白吗?处理同样的问题 对我来说,实际上我只需要在 24 小时后返回到 repo 并且导致问题的任何原因 - 一定是在 API 交互的服务器端 - 都已修复。祝你好运@user2202911,希望你能彻底解决问题。 @ken 感谢您的回复。我只是继续创建了一个新的 firebase 项目并复制 + 粘贴了我的代码。谢天谢地,我的项目仍在开发中,所以我可以从新数据库开始

以上是关于无法进行 Firebase 部署 - 错误:指定的 Firebase 无效的主要内容,如果未能解决你的问题,请参考以下文章

Firebase 函数无法部署:SyntaxError: Unexpected token function

SyntaxError:无法使用 typescript 在模块 firebase 部署错误之外使用 import 语句

Google Cloud Build - firebase 部署错误:“公共目录 'dist/browser' 不存在,无法将托管部署到站点 PROJECT-ID”

部署 Cloud Functions 后出现错误:无法刷新访问令牌。

Typescript 中的 React + Firebase 云功能无法部署

突然无法再将功能部署到 Firebase 项目