使用uWSGI将Flask应用部署到生产环境:
1、安装uWSGI conda install -c conda-forge uwsgi(pip install uwsgi会报错) 2、配置uWSGI 在python程序的同一文件夹下创建 uwsgi.ini文件,文件内容如下表。 需要按照实际情况修改文件名称地址,log文件保存路径,启动的进程数和线程数等 3、启动服务,执行命令:uwsgi --ini uwsgi.ini 4、使用下面命令来查看uwsgi是否启用成功:curl http://10.28.198.94:5008/ 5、想要修改配置文件uwsgi.ini内容,并让其生效,需要先停止uwsgi服务,修改uwsgi.ini的内容,再重启后修改的配置生效(:查找相关进程(ps aux | grep uwsgi),找到主进程) 执行命令( kill -TERM 35064)停止服务。 |
uwsgi.ini文件内容如下
# uwsgi.ini [uwsgi] # 指定应用程序的模块名和变量名 module = app:app chdir = /home/liuhongyue/l_Operator_Intelligence_Lt buffer-size = 65535 # 设置为 64KB 或更大 # 监听的socket地址,可以是文件,也可以是IP:PORT
http = 0.0.0.94:5008 # 进程数 processes = 4 # 线程数 threads = 2 # 启用主进程模式 master = true # 设置守护进程模式,即在后台运行 daemonize = /home/liuhongyue/l_Operator_Intelligence_Lt/app.log # 如果需要启用静态文件服务(例如,提供 CSS 或 JS 文件) # static-map = /static=/path/to/static/files # 其他常用的选项 vacuum = true die-on-term = true |
其中地址处填我的服务器地址和对应的端口
Python对应的程序如下(app.py),python的名称需要与uwsgi.ini文件中的module的名称一致
from flask import Flask
# 创建一个Flask应用实例 app = Flask(__name__) # 定义一个处理根路径的路由函数 @app.route('/', methods=['get']) def hello_world(): return 'Hello, World!'
if __name__ == '__main__': # 仅在直接执行脚本时启动内置服务器(用于开发和调试) app.run(host="10.28.198.94", port="5008",debug=True) |