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

BitBucket Pipeline部署Heroku认证失败,咨询登录方式及解决方案

BitBucket Pipelines 部署到 Heroku 认证失败的解决方案

你遇到的问题是因为 Heroku 已经不再允许通过 Git 用户名+密码的方式进行认证了,官方要求使用 API 令牌或者 Heroku CLI 凭证来完成部署授权。下面给你几个可行的解决方案,同时解答你关于 Heroku Pipeline 的疑问:

关于 Heroku Pipeline 的疑问

首先明确:Heroku Pipeline 是用来管理应用部署流程(比如从测试环境到生产环境的版本晋升)的工具,它并不能帮你在 BitBucket Pipelines 中完成登录认证。所以你没法通过 Heroku Pipeline 解决这个认证问题,得用下面的方法。

解决方案1:使用 Heroku API 令牌配置环境变量(最推荐)

这是最简单高效的方式,不需要在 Pipeline 中安装额外工具:

  1. 登录你的 Heroku 账户,进入「账户设置」→「Applications」→「Create Authorization」,创建一个新的 API 令牌(记得保存好这个令牌,它只会显示一次)。
  2. 打开你的 BitBucket 仓库,进入「Settings」→「Repository variables」,添加一个名为 HEROKU_API_KEY 的变量,值就是刚才生成的 API 令牌。
  3. 修改你的 bitbucket-pipelines.yml 文件,在部署脚本中用 API 令牌配置 Git 远程地址:
    pipelines:
      default:
        - step:
            name: Deploy to Heroku
            script:
              - git remote add heroku https://heroku:$HEROKU_API_KEY@git.heroku.com/你的应用名称.git
              - git push heroku master --force
    
    这样就能通过 API 令牌完成认证,彻底避开用户名密码的问题。

解决方案2:在 Pipeline 中使用 Heroku CLI 登录

如果你更习惯用 Heroku CLI 操作,可以在 Pipeline 中安装 CLI 并通过 API 令牌登录:

  1. 先按照方案1的步骤生成 Heroku API 令牌,并在 BitBucket 中配置 HEROKU_API_KEY 变量。
  2. 修改 bitbucket-pipelines.yml:
    pipelines:
      default:
        - step:
            name: Deploy to Heroku
            script:
              # 安装 Heroku CLI
              - curl https://cli-assets.heroku.com/install-ubuntu.sh | sh
              # 通过 API 令牌登录
              - heroku login -i --apikey $HEROKU_API_KEY
              # 推送代码到 Heroku
              - git push heroku master
    

额外注意事项

  • 确保你的 Heroku API 令牌权限设置正确(一般选「Global」权限即可),保证 BitBucket Pipelines 能访问到目标应用。
  • 如果推送时遇到代码版本冲突,可以加上 --force 参数强制推送,但生产环境要谨慎使用,最好先确认代码版本的一致性。

内容的提问来源于stack exchange,提问作者Ben Gannaway

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:41:48