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

Heroku Scheduler无法执行Docker命令问题求助

问题解决方法

Heroku的dyno运行环境默认没有安装Docker客户端,所以你没法在Scheduler或控制台里执行docker run这类Docker命令,这就是报错docker: not found的原因。不需要通过Docker再启动容器,直接利用已部署的镜像环境执行脚本即可,具体方案如下:

  • 直接在Scheduler中执行脚本命令
    把原来的docker run registry.heroku.com/my-app/web python worker.py替换为python worker.py。因为Scheduler的定时任务会在基于你部署的Docker镜像创建的临时dyno里运行,环境和你的应用完全一致,直接调用脚本即可。
    如果worker.py不在默认工作目录,记得加上绝对路径,比如python /app/worker.py(根据你镜像里的实际路径调整)。

  • 先在控制台验证命令有效性
    可以先在Heroku控制台执行python worker.py,确认脚本能正常运行,排除路径、依赖缺失等问题。

  • 若需长期运行worker进程(可选)
    如果你的worker需要持续运行而非定时触发,可以在项目根目录创建Procfile,添加内容:

    worker: python worker.py
    

    部署后通过Heroku CLI执行heroku ps:scale worker=1启动worker进程,但这和Scheduler的定时任务场景不同,按需选择。

内容的提问来源于stack exchange,提问作者Luca König

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 16:57:37