Centos上uwsgi+flask项目部署

最近需要提供服务给后台,决定采用flask加载模型提供服务,网上查到的资料大多都是nginx+uwsgi+flask的方式,个人需求demo级别的,因此只用了uwsgi+flask。

一、安装

pip install uwsgi  (好像只能在Linux上安装)

pip install flask、

二、新建一个最简单的应用

from flask import Flask
 
app = Flask(__name__)
 
 
@app.route('/')
def hello_world():
    return 'Hello World'
 
 
if __name__ == '__main__':
    app.run()

三、配置uwsgi

在应用目录下新建一个文件uwsgi.ini,这里名字你可以随便取,后缀支持ini,xml,json三种格式。

配置内容如下:

[uwsgi]
http=0.0.0.0:8080
wsgi-file=/root/project/application/demo.py
callable=app
touch-reload=/root/project/application/
pidfile = /root/project/application/uwsgi.pid   #指定pid文件

1、http=0.0.0.0:8080,表示任意ip,端口号为8080

2、wsgi-file=/root/project/application/demo.py,应用程序位置

3、callable=app,实例名称

4、touch-reload=/root/project/application/,表示要监听的文件路径,当要监听的文件路径下的文件发生变化的时候自动重新加载服务器

5、pidfile = /root/project/application/uwsgi.pid    指定pid文件,用于启动、重启、关闭服务

四、运行

uwsgi uwsgi.ini  就可以运行

也可以:uwsgi --ini uwsigi.ini

重启: uwsgi --reload uwsigi.pid

关闭:uwsgi --stop uwsigi.pid

五、注意

当服务器上同时存在python2和python3时:会出现找不到uwsgi的情况:

解决方法:

        ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi       实际情况根据自己安装的位置设置

六、参考文献

1、https://www.jianshu.com/p/1a65964c5b51

2、https://www.jianshu.com/p/830c4fd94605

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是基于 CentOS 操作系统的 Nginx + Uwsgi + Flask 部署服务的详细操作步骤: 1. 安装必要的软件包 ```bash yum install epel-release yum install nginx yum install python3 python3-pip pip3 install uwsgi flask ``` 2. 创建 Flask 应用程序 在服务器上创建 Flask 应用程序,例如: ```python from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello, World!' if __name__ == '__main__': app.run() ``` 3. 创建 uwsgi 配置文件 在服务器上创建一个 uwsgi 配置文件,例如: ```ini [uwsgi] module = wsgi:app master = true processes = 5 socket = /tmp/uwsgi.sock chmod-socket = 660 vacuum = true die-on-term = true ``` 其中,`module` 参数指定 Flask 应用程序所在的模块和变量名,`socket` 参数指定 uwsgi 与 Nginx 通信的 Unix 套接字文件位置。 4. 创建 Nginx 配置文件 在服务器上创建一个 Nginx 配置文件,例如: ```nginx server { listen 80; server_name your-domain.com; location / { include uwsgi_params; uwsgi_pass unix:/tmp/uwsgi.sock; } } ``` 其中,`listen` 参数指定监听的端口,`server_name` 参数指定服务器的域名或 IP 地址,`location` 参数指定请求 URL 的路径,`uwsgi_pass` 参数指定 uwsgi 与 Nginx 通信的 Unix 套接字文件位置。 5. 启动服务 在服务器上启动 uwsgi 和 Nginx 服务: ```bash uwsgi --ini uwsgi.ini & systemctl start nginx ``` 6. 测试服务 在浏览器中输入服务器的域名或 IP 地址,应该能够看到 Hello, World! 的输出。 以上就是在 CentOS 上使用 Nginx + Uwsgi + Flask 部署服务的详细操作步骤。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值