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

GitHub Actions部署Python应用至Heroku失败:容器发布报错求助

解决Heroku容器发布失败的问题

核心问题分析

你的Heroku应用当前未使用container堆栈,导致Docker容器发布命令不被支持,最终触发"undefined"错误。

分步解决步骤

1. 切换Heroku应用堆栈至container

在本地终端执行以下命令,将应用堆栈设置为容器模式:

heroku stack:set container -a 你的应用名称

执行完成后,Heroku会确认堆栈切换成功,后续部署流程即可适配Docker容器发布逻辑。

2. 检查GitHub Actions部署配置

确保你的GitHub Actions工作流文件中,部署步骤适配容器部署场景。示例配置如下:

- name: Deploy Docker container to Heroku
  uses: akhileshns/heroku-deploy@v3.12.12
  with:
    heroku_api_key: ${{ secrets.HEROKU_API_KEY }}
    heroku_app_name: "你的应用名称"
    heroku_email: "你的Heroku注册邮箱"
    docker_heroku_process_type: web

如果之前使用的是普通Git推送的部署方式,需替换为上述容器部署相关的Action或命令。

3. 重新触发部署

完成堆栈切换和配置检查后,通过推送代码或手动在GitHub Actions页面重新运行工作流,验证容器发布是否成功。

备选方案:改用heroku-22堆栈部署

若无需使用容器堆栈,可切换至Heroku官方buildpack部署:

  • 移除项目中的Dockerfile(如果存在)
  • 在本地执行命令切换堆栈:
heroku stack:set heroku-22 -a 你的应用名称
  • 调整GitHub Actions配置为Git推送方式:
- name: Deploy to Heroku via Git
  run: |
    git remote add heroku https://heroku:${{ secrets.HEROKU_API_KEY }}@git.heroku.com/你的应用名称.git
    git push heroku main -f

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 01:14:55