我有一个 Heroku 应用程序,它会在我将更改推送到 GitHub 时自动部署。这是一个 Discord Bot(用 Python 编写)。
现在我想在部署时自动启动这个 python 脚本(它应该全天候运行 24/7,直到它被新的部署停止)。
我阅读了有关 Dynos 的信息,但不知道如何使用它们。我已经使用 bot: python bot.py
添加了 Procfile
但这不会自动启动应用程序。 Dyno 仅显示在仪表板上的资源选项卡中。使用 heroku ps -a myapp
它响应 No dynos on ⬢ myapp
。仪表板中的 bot: python bot.py
Dyno 也无法通过该开关启动。
Screenshot: The switch can't be activated
所以我尝试使用 release: python bot.py
来启动机器人,但在另一次部署之后,进程堆积起来并且机器人运行了多次。
最佳答案
不要为此使用release
命令。
release
commands run once as part of the deploy ,然后他们就完成了。您的应用程序可能应该设置为 web
进程(如果它应该响应 HTTP 请求):
web: python myapp.py
或 worker
进程(如果不是):
worker: python myapp.py
关于python - Heroku:如何在部署时自动启动 Python 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56861069/