在Heroku上连续运行简单的python脚本

时间:2016-08-25 07:27:57

标签: python heroku

我有简单的python脚本,我想在Heroku上托管,并使用Heroku调度程序每10分钟运行一次。那么有人可以解释一下我应该在调度程序上的rake命令中键入什么以及我应该如何更改Heroku的Procfile?

1 个答案:

答案 0 :(得分:17)

当然,你需要做一些事情:

  1. 在项目的根目录中定义一个requirements.txt文件,列出您的依赖项。这就是Heroku用来'检测'你正在使用Python应用程序的东西。

  2. 在Heroku调度程序插件中,只需定义运行以启动python脚本所需的命令。它可能类似于python myscript.py

  3. 最后,你需要有一些能够在正确的Heroku PORT上收听的网络服务器 - 否则,Heroku会认为你的应用程序无法正常工作,并且它将处于'崩溃'状态 - 这不是你想要的。为了满足这个Heroku的要求,你可以像这样运行一个非常简单的Flask Web服务器......

  4. 代码(server.py):

    from os import environ
    from flask import Flask
    
    app = Flask(__name__)
    app.run(environ.get('PORT'))
    

    然后,在Procfile中,只需说:web: python server.py

    那就应该这样做=)