You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Heroku上部署Google Cloud Vision API应用的凭据配置问题咨询

Heroku 配置 Google Cloud 凭证的正确解决方案

问题根因

  1. .profile 配置逻辑本身没问题,失败大概率是凭证内容转义、引号缺失、路径不匹配导致文件生成失败
  2. heroku bash 进入的是独立的临时 dyno 实例,和运行应用的 dyno 是完全隔离的不同文件系统,手动创建的文件应用完全无法访问
  3. 直接提交 json 文件未生效,90% 概率是你的 .gitignore 规则默认屏蔽了凭证类 json 文件,实际根本没有推送到 Heroku

正确操作步骤

  • 优先用环境变量+动态生成文件的方案,避免凭证提交到代码仓库的安全风险
  • 先将本地凭证文件转成单行无换行格式,避免 shell 解析错误:本地终端执行 cat google-credentials.json | tr -d '\n',复制输出的单行内容
  • 在 Heroku 后台配置两个环境变量:
    • GOOGLE_CREDENTIALS:值为上一步拿到的单行凭证内容
    • GOOGLE_APPLICATION_CREDENTIALS:值固定写 /app/google-credentials.json,不要用 $HOME 这类变量避免解析异常
  • 在项目根目录创建 .profile 文件,内容为:echo "$GOOGLE_CREDENTIALS" > /app/google-credentials.json,注意变量一定要加双引号,避免内容中特殊字符被 shell 截断
  • 检查项目 .gitignore 文件,确认没有屏蔽 .profile 文件,执行 git add .profile && git commit && git push heroku main 提交部署
  • 部署完成后执行 heroku run cat /app/google-credentials.json 验证,能正常输出完整凭证内容即为配置成功

特殊场景适配

如果你使用 Docker 容器方式部署 Heroku 应用,.profile 机制不会生效,需要将生成凭证的逻辑写到 Dockerfile 的启动脚本中,在启动应用进程前先执行将环境变量写入凭证文件的操作即可。

内容的提问来源于stack exchange,提问作者Yihao Liu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 10:06:03