在服务器上持久运行Python脚本

Rom*_*oma 2 python ubuntu telegram-bot

我有一个 python 机器人,托管在数字海洋上。现在为了持续运行它,我正在使用虚拟终端屏幕,我发现这种方式还很不稳定。

如何安排我的机器人脚本永远运行并在崩溃时重新运行?还有我如何安排其他一些 python 脚本每小时运行一次?

thu*_*ein 7

问题1.如何让事情永远运行。

有几种方法可以做到这一点。你可以创建像 systemd 服务这样的系统服务(教程在这里),或者你可以使用像supervisord这样的东西来做到这一点。这两种方法都可以帮助您在失败时重新启动。

最后,您仍然可以使用 screen 或 tmux 来完成此操作,但它无法在失败时自动重新启动。


问题2.如何定期运行脚本?

为此,有一个名为 的内置程序cron。您可以使用它在指定的任何时间自动触发任何脚本。

DigitalOcean:如何使用 cron 实现自动化

太棒了;你可以这样做crontab -e然后添加以下内容

0 * * * * python /path/to/script.py
Run Code Online (Sandbox Code Playgroud)

这将在每天每小时的 0 分钟触发该命令。

这是一个可用于制作 cron 时间格式的网站。https://crontab.guru/