Next.js部署Firebase遇服务账号缺失,能否新建已删除的compute@developer账号?
重新创建Compute Engine默认服务账号解决部署报错
你完全可以重新创建这个格式的默认服务账号,具体操作步骤如下:
- 登录Google Cloud控制台,进入你的目标项目
- 找到「IAM与管理员」菜单,进入「服务账号」页面
- 点击页面顶部的「创建服务账号」按钮
- 服务账号名称填
compute,系统会自动生成对应的ID:compute@[你的项目ID].developer.gserviceaccount.com,和你之前丢失的账号格式完全一致 - 点击「创建并继续」,给这个账号添加必要权限:
- 至少要加
Compute Admin(Compute Engine权限组)和Cloud Functions Developer(Cloud Functions权限组),满足Next.js函数部署的需求
- 至少要加
- 完成后续步骤完成账号创建
创建好之后,重新执行Firebase部署命令:
firebase deploy --only hosting,functions
如果还是有问题,可以先做这两步验证:
- 运行
gcloud auth list确认当前CLI使用的账号有权限操作服务账号 - 运行
gcloud iam service-accounts list查看新账号是否已成功创建
额外提示:如果部署仍失败,建议把Firebase CLI更到最新版本,或者尝试重新初始化Firebase配置(运行
firebase init,选择保留现有配置即可)
内容的提问来源于stack exchange,提问作者ATRIIX -_-
相关产品推荐
相关产品推荐

