我试图部署python脚本,但是我收到了这个错误
Failed to detect app matching https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/python.tgz buildpack
我现在有哪些文件:
automation.py
一个简单的python脚本,用于导入 praw ,时间, os 和检查。
requirements.txt
如Heroku文档中所述,我通过运行pip freeze > requirements.txt
创建了此文件,其中包含:
astroid==1.5.2
colorama==0.3.8
isort==4.2.5
lazy-object-proxy==1.2.2
mccabe==0.6.1
praw==4.4.1.dev0
prawcore==0.10.1
pylint==1.7.1
requests==2.13.0
six==1.10.0
update-checker==0.16
wrapt==1.10.10
runtime.txt
再次如Heroku文档中所述,此文件包含我的脚本的运行时,包含:
python-3.6.0
我已将我的遥控器更改为heroku,添加了所有文件,提交并推送到heroku master,但我收到了开头提到的错误。有什么我做错了吗?我见过this answer,但我不相信。如果可能的话,我想避免使用任何框架。
git ls-files output
.gitignore
LICENSE
README.md
requirements.txt
runtime.txt
automation.py
答案 0 :(得分:1)
除了runtime.txt
和requirements.txt
之外,还需要Procfile
- 这就是Heroku如何知道为您的应用运行的脚本。没有它,Heroku不知道automation.py
有什么特别之处。但请注意 - 如果您的脚本没有侦听任何端口,请将进程名称定义为" worker"或者除了" web"之外的任何其他内容。如果您将其定义为" web" Heroku希望它绑定到外部可见端口(不在localhost上)。如果Heroku在60秒内没有检测到端口绑定,则会将应用报告为无法启动