cnetos7下nginx+uwsgi+flask项目部署

cnetos7下nginx+uwsgi+flask项目部署

环境安装

//安装 uwsgi
pip3 install uwsgi
//创建软连接
ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

//查看 uwsgi版本
uwsgi --version

//安装虚拟环境管理类库
pip3 install pipenv

//进入项目文件目录,建立虚拟环境,安装项目需要的类库
pipenv install

//上传项目到服务器指定目录,验证通过 开发环境是否可以跑起来
python flaskbasedemo.py 

uwsgi启动项目
文档地址:http://uwsgi-docs.readthedocs.io/en/latest/WSGIquickstart.html#deploying-flask

//用uwsgi命令行的方式启动uwsgi,
uwsgi --http :5000 --wsgi-file flaskbasedemo.py --callable app --home /root/.local/share/virtualenvs/FlaskBaseDemo-QItxpnHv

tips:
--http 以http的启动,如果有前置服务器(如nginx)需要配置为 scoket
--wsgi-file 项目的启动文件,运行app.run()的文件
--callable app.run() 方式的实例对象
--home 虚拟环境的绝对路径

//杀死进程
kill -9 进程id

uwsgi配置文件启动 验证

//创建配置文件 uwsgi.ini
[uwsgi]
#地址为内网地址 ifconfig地址
http=10.141.8.240:5050
# 项目目录
chdir=/opt/flasktest/FlaskBaseDemo
# 启动uwsgi的用户名和用户组
uid=root
gid=root
#flask项目必须的配置
callable= app
#指定虚拟环境路径
home=/root/.local/share/virtualenvs/FlaskBaseDemo-QItxpnHv

# 指定项目启动文件,该路径是相对于 chdir目录来的
wsgi-file = flaskbasedemo.py

# 启用主进程
master=true
# 进程个数
workers=5
pidfile=/opt/flasktest/scripts/uwsgi.pid
# 自动移除unix Socket和pid文件当服务停止的时候
vacuum=true
# 序列化接受的内容,如果可能的话
thunder-lock=true
# 启用线程
enable-threads=true
# 设置自中断时间
harakiri=30
# 设置缓冲
post-buffering=4096
# 设置后台启动
daemonize=/opt/flasktest/scripts/uwsgi.logi


#通过该配置文件启动
uwsgi --ini uwsgi.ini
#查看进程相关的信息
ps aux |grep uwsgi
#停掉uwsig
uwsgi --stop uwsgi.pid

测试验证访问即可 外网地址:5050访问即可

nginx代理设置

uwsig配置文件修改,http改为 socket ,其它不变
[uwsgi]
#这个地址可以是127.0.0.1地址也可以是 ifconf 内网的地址,注意要与 nginx配置的地址一致
socket=10.141.8.240:5050
...


nginx配置文件 flskbase.conf

server {
    listen       8090;
    # ifconf 内网地址
    server_name  10.141.8.240  www.applelife.com;
        
    #开启静态文件处理强能力
    sendfile on;
    #charset koi8-r;
    #配置请求日志
    #access_log  /var/log/nginx/host.access.log  main;
        
    # uwsgi相关参数配置
    location / {
        include uwsgi_params;
        # 这个需要与 uwsgi配置文件出的 socket一致
        uwsgi_pass 10.141.8.240:5050;
    }
    
    # 静态文件定义
    location /static {
        #开启gzip
        #gzip on;
        #指定gzip http的版本
        #gzip_http_version 1.1;
        #指定gzip压缩比
        #gzip_comp_level 2;
        #指定需要压缩的格式
        #gzip_types text/pain application/javascript application/x-javascript text/css/application/xml text/javascript application/x-http-php ima  # e/jpeg image/gif image/png;
        root /opt/test ;
    }

}

socket另外一种配置方式:
官方文档: https://uwsgi-docs.readthedocs.io/en/latest/Nginx.html?highlight=nginx

# usgi配置修改为,其余不变
socket = /opt/flasktest/scripts/uwsgi.sock;


# nginx 配置修改为,其余不变
 location / {
    include uwsgi_params;
    uwsgi_pass unix:///opt/flasktest/scripts/uwsgi.sock;
}

注意:

root的处理结果是:root路径+location路径 
访问地址:http://118.89.238.148:8000/static/timg.jpg
    location /static {
            root /opt/test;
    }

真实的地址为:http://118.89.238.148:8000/opt/test/static/timg.jpg
    

alias的处理结果是:使用alias路径替换location路径 
访问地址:http://118.89.238.148:8000/static/timg.jpg
    location /static/ {
            alias /opt/test/static/;
    }
实际为 http://118.89.238.148:8000/opt/test/static/timg.jpg
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,684评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,143评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,214评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,788评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,796评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,665评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,027评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,679评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,346评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,664评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,766评论 1 331
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,412评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,015评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,974评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,073评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,501评论 2 343