为 Flask 应用程序创建 systemd 服务文件是确保应用程序在 Linux 系统上顺利运行的一种极好的方法,它提供了一种健壮且可靠的方式来管理应用程序进程。本文将指导您完成为 Flask 应用程序创建和配置 systemd 服务。
1: Create a Flask Application
创建一个样例 Flask 应用程序
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello, World!'
if __name__ == '__main__':
app.run()
2: Test Your Flask Application
在创建服务文件之前,确保你的 Flask 应用运行时没有错误。
python app.py
3: Creating a Systemd Service File
切换到 “/etc/systemd/system”目录
cd /etc/systemd/system
使用文本编辑器创建一个名为 flaskapp.service 的文件。
sudo nano flaskapp.service
将以下内容添加到文件中:
[Unit]
Description=Your Flask App
After=network.target
[Service]
User=username
Group=groupname
WorkingDirectory=/path/to/your/app
Environment="PATH=/path/to/your/app/env/bin"
ExecStart=/path/to/your/app/env/bin/gunicorn -w 4 -b 0.0.0.0:8000 app:app
[Install]
WantedBy=multi-user.target
替换 username
, groupname
, /path/to/your/app
, app:app
为实际使用的值。
文件说明:
- [Unit] : 描述服务和依赖项
- [Service] : 如何启动和管理服务
- [Install] : 与系统启动集成
4: Enable and Start Your Flask Service
重新加载 systemd 以读取新的服务文件
sudo systemctl daemon-reload
启用服务开机启动
sudo systemctl enable flaskapp.service
启动服务
sudo systemctl start flaskapp.service
5: Monitoring and Troubleshooting
检查服务的状态
sudo systemctl status flaskapp.service
查看服务日志
journalctl -u flaskapp.service
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。