pip install uwsgi (linux上支持,windows不支持)
运行uwsgi --ini flask_uwsgi.ini
一般配置ini,保存为uwsgi.ini
第一行配置中,单个uwsgi部署需要http,而不是官网上的scoket(socket是需要和nginx通信才配置)
[uwsgi]
http=:5000
wsgi-file=/home/rongyi/flask_test/manager.py
callable=app
processes=4
threads=2
[uwsgi]
master = true
http=:5000
chdir = /home/urun/web/cluster_manager
wsgi-file=/home/urun/web/cluster_manager/run.py
callable=app
processes=4
threads=2
buffer-size = 65536
vacuum=true
pidfile =/home/urun/web/cluster_manager/uwsgi.pid
开始执行: uwsgi uwsgi.ini
停止uwsgi: pkill -f -9 uwsgi
将uwsgi添加为系统服务
在我们运行或者调试uwsgi的时候:
如果Ctrl+C或者退出ssh链接,都会导致uwsgin进程关闭。
这时,我们需要进程管理软件管理 uwsgi 进程的运行了。Ubuntu 自带的 systemd 是最简单的方法,可以将我们的项目变为系统服务。首先创建 myproject.service 文件
sudo vim /etc/systemd/system/myproject.service
[Unit]
Description=uWSGI instance to serve myproject
After=network.target
[Service]
[Unit]
Description=uWSGI instance to serve myproject
After=network.target
[Service]
WorkingDirectory=/home/python_project/kapi
ExecStart=/home/python_project/kapi/venv/bin/uwsgi --ini /home/python_project/kapi/config.ini
ExecStop=/home/python_project/kapi/venv/bin/uwsgi --stop /home/python_project/kapi/uwsgi/uwsgi.pid
ExecReload=/home/python_project/kapi/venv/bin/uwsgi --reload /home/python_project/kapi/uwsgi/uwsgi.pid
[Install]
WantedBy=multi-user.target
o [Unit]部分主要是对这个服务的说明,内容包括Description和After,Description用于描述服务,After用于描述服务类别
o [Service]部分是服务的关键,是服务的一些具体运行参数的设置
• WorkingDirectory: 你的项目目录。
• ExecStart:服务启动的代码
• ExecReload:重启命令
• ExecStop:停止命令
• WantedBy=multi-user.target:指明会跟随系统启动而启动该服务。
o 注意以上所有路径为绝对路径。
配置完毕需要reload systemdctl(命令:systemctl daemon-reload)
接下来可以愉快的启动了(kapi 就是 kapi.service 文件名去掉扩展名)
启用:systemctl start kapi.service
停止:systemctl stop kapi.service
重载:systemctl reload kapi.service
原文:https://blog.csdn.net/u013421629/article/details/84103873
转载自:https://blog.csdn.net/litian9898/article/details/78979352