注意:如果您在Python中使用库,请知道服务在根目录下运行,您需要在根目录中安装该库

注意:如果您在Python中使用库,请知道服务在根目录下运行,您需要在根目录中安装该库

我最近在我的 FreeBSD 家庭服务器上安装了 Google App Engine 开发服务器,以便能够远程测试我的 GAE 应用程序。我不明白的是如何在启动时将 Python 开发服务器作为后台进程运行。

我在监狱里管理一切。因此,目前,当我想启动开发服务器时,我必须登录服务器,打开监狱并手动运行 Python 脚本。最糟糕的是我必须保持连接,因为当我的笔记本电脑失去与监狱的连接时,Python 进程就会停止。我无法找出将其作为后台进程/守护进程运行的方法。

在我寻找解决方案的过程中(比如 rc.d,我根本没有得到它)​​,我已经制作了一个运行该命令的 .sh 脚本,但我没有找到在 stratup 上运行它的方法。

这是完整的命令: python dev_appserver.py --host=0.0.0.0 --port=2222 /mnt/path/to/gae_app/

答案1

这是我在 Linux 中所做的,希望有帮助

第一步:创建服务 sudo vi /lib/systemd/system/NameofYourService.service

步骤 2:添加此行并编辑文本中的位置

[Unit]
Description=Example python App running on Ubuntu

[Service]
WorkingDirectory=/home/app
ExecStart=/usr/bin/python3 /home/app/app.py
Restart=always
# Restart service after 10 seconds if the dotnet service crashes:
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=Nameofyourapp

[Install]
WantedBy=multi-user.target

Step3:启用并启动服务

sudo systemctl enable NameofYourService.service
sudo systemctl start NameofYourService.service

对于禁用

sudo systemctl stop NameofYourService.service
sudo systemctl disable NameofYourService.service

用于日志

sudo journalctl -fu NameofYourService.service

注意:如果您在Python中使用库,请知道服务在根目录下运行,您需要在根目录中安装该库

答案2

要作为守护进程运行脚本,请参阅这里

要使其在 freebsd 中启动,请参阅他们的官方文档 记录器()(8)

答案3

你可以使用 cron 作业

步骤1– 你的Python脚本路径

/home/app/app.py

第2步- 使用此命令打开 cron

 sudo crontab -e

选择你的编辑器,主要是纳米滚动,最后做

步骤3- 添加这一行

@reboot python /home/app/app.py

步骤4- 如果您使用 Nano 文本编辑器,请按 Ctrl+x 退出

相关内容