我最近在我的 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
答案3
你可以使用 cron 作业
步骤1– 你的Python脚本路径
/home/app/app.py
第2步- 使用此命令打开 cron
sudo crontab -e
选择你的编辑器,主要是纳米滚动,最后做
步骤3- 添加这一行
@reboot python /home/app/app.py
步骤4- 如果您使用 Nano 文本编辑器,请按 Ctrl+x 退出