uWSGI+Nginx+Flask+docs

2023-03-01 17:25:13 浏览数 (1)

1 下载Flask和uwsgi

代码语言:javascript复制
pip3 install uwsgi flask
2 单独运行
代码语言:javascript复制
uwsgi --http :9090 --wsgi-file foobar.py
#直接浏览器访问ip:9090
3 配合nginx运行

切换用户或创建用户 不允许root用户

代码语言:javascript复制
su py
代码语言:javascript复制
uwsgi --socket 127.0.0.1:9090 --wsgi-file myflaskapp.py --callable app --processes 4 --threads 2 --stats 127.0.0.1:9191

配置nginx

代码语言:javascript复制
location / {
     include uwsgi_params;
     uwsgi_pass 127.0.0.1:9090; 
}

运行nginx

配置文件运行

代码语言:javascript复制
[uwsgi]
 web应用的入口模块名称
 module = RestRelFlask:app
 启动主进程
 master = true
 说明要启动5个子进程处理请求
 processes = 3
 程序内启用的application变量名
 callable = app
 flask程序的启动文件,通常在本地是通过运行
 wsgi-file = RestRelFlask.py
 项目目录
 chdir = /opt/pnp
 启动程序时所使用的ip和端口号
 socket = 127.0.0.1:8207
 uwsgi日志路径
 logto = RestRelFlask.log
 chmod-socket = 660
 vacuum = true
 获取uwsgi统计信息的服务地址
 stats = 127.0.0.1:9191
 uwsgi进程的pid,用于以后的stop和reload
 pidfile = uwsgi.pid
代码语言:javascript复制
启动
uwsgi --ini uwsgi.ini
后台启动 
uwsgi -d --ini uwsgi.ini
重启
uwsgi --reload xxx.pid
停止
uwsgi --stop xxx.pid
4 接口文档

最开始使用swagger的flasgger,但是感觉不太好用,人生苦短,flasgger太麻烦,后来改了好几个,最终选择了flask-docs

代码语言:javascript复制
# 安装:
pip3 install Flask—Docs
# 引用
from flask_docs import ApiDoc
# 需要显示文档的 Api
app.config['API_DOC_MEMBER'] = ['api', 'platform']
ApiDoc(app)
#查看文档页面
http://127.0.0.1/docs/api
# 书写 markdown 格式文档
@@@
在注释结尾用 “@@@” 包含 markdown 格式文档
@@@

0 人点赞