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

Heroku转Docker容器部署,执行container:release命令时报错求助

排查Heroku容器部署报错:Error: This command is for Docker apps only. Run git push heroku main to deploy

可能的根因

  • heroku stack:set container命令未成功生效,应用仍处于Git部署栈
  • 应用开启了GitHub自动部署,Heroku优先采用Git部署逻辑
  • Heroku CLI缓存了旧的应用配置,未识别到栈切换操作
  • Docker镜像推送未完成,或镜像标签/路径配置错误

解决步骤

  1. 确认容器栈状态
    运行以下命令检查当前应用栈:

    heroku stack --app {{MyHerokuAppName}}
    

    输出需显示container为current栈。若未生效,重新执行栈设置命令并确保无报错:

    heroku stack:set container --app {{MyHerokuAppName}}
    
  2. 关闭GitHub自动部署
    若之前用GitHub部署,自动部署会覆盖容器部署设置,可通过命令行关闭:

    heroku features:disable github-integration --app {{MyHerokuAppName}}
    

    或登录Heroku控制台,进入应用Deploy标签页,断开GitHub关联并关闭自动部署开关。

  3. 刷新CLI配置缓存
    注销并重新登录Heroku CLI,清理本地缓存:

    heroku logout && heroku login
    

    再次执行heroku apps:info --app {{MyHerokuAppName}},确认Stack字段为container。

  4. 验证镜像推送结果
    检查docker push的输出,确保所有镜像层推送成功(出现successfully pushed提示)。若推送失败,重新执行tag和push命令,确认{{DockerImageName}}是本地已存在的有效镜像:

    docker tag {{DockerImageName}}:latest registry.heroku.com/{{MyHerokuAppName}}/web
    docker push registry.heroku.com/{{MyHerokuAppName}}/web
    
  5. 一键式容器部署(可选)
    放弃手动tag/push流程,使用Heroku CLI的集成命令自动完成构建、推送和发布:

    heroku container:push web --app {{MyHerokuAppName}}
    heroku container:release web --app {{MyHerokuAppName}}
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 10:53:15