Flask項目之Centos uwsgi+nginx部署

Flask項目Nginx部署

首先我們需要準備服務器環境,這裏暫時沒有云主機,我們使用虛擬機進行部署,服務器系統採用Centos7。開始flask項目部署

一、項目環境部署並進行flask方式啓動測試

1、Centos7安裝python3.5環境
詳情安裝教程請訪問Centos7 下安裝python3及卸載

2、關閉防火牆及Selinux(僅測試使用,項目上線必須開啓指定端口)
在這裏插入圖片描述
3、測試ip網絡通信
在這裏插入圖片描述

4、windows 中導出flask沙箱環境安裝包
在這裏插入圖片描述
5、將flask項目導入到Centos服務器下
在這裏插入圖片描述
在這裏插入圖片描述

6、根據之前導出的安裝包package.txt進行服務器flask環境安裝

pip3 install -r package.txt

在這裏插入圖片描述
在這裏插入圖片描述
7、啓動flask自帶的服務器,進行測試

python3 manage.py runserver --host 0.0.0.0

在這裏插入圖片描述
訪問測試成功:
在這裏插入圖片描述

二、部署uwsgi+Nginx環境

1、安裝uwsgi

pip3 install uwsgi

在這裏插入圖片描述
2、創建uwsgi軟鏈接並測試

ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi

在這裏插入圖片描述
3、創建uwsgi配置文件目錄script
在這裏插入圖片描述
4、創建並編寫uwsgi.ini配置文件

#uwsgi.ini
[uwsgi]
socket = 10.10.21.130:5000 # uwsgi 啓動時所使用的地址與端口
pythonpath = /opt/FlaskStudentBluePrint # flask項目目錄
module = manage # 使用的模板
wsgi-file = /opt/FlaskStudentBluePrint/manage.py # 指定flask運行文件
callable = app # python 程序內用以啓動的 application 變量名
processes = 4 # 4進程
threads = 2 # 2線程
daemonize = /opt/script/uwsgi.log # 指定uwsgi日誌文件
buffer-size = 32768 # 指定uwsgi默認buffer,否則可能出現nvalid request block size: 4161 (max 4096)...skip

在這裏插入圖片描述
5、啓動uwsgi查看測試效果,當前啓動uwsgi不能直接訪問,需部署nginx

uwsgi --ini uwsgi.ini

在這裏插入圖片描述
6、下載Nginx tar包

wget -c https://nginx.org/download/nginx-1.12.2.tar.gz

在這裏插入圖片描述
7、解壓並進行編譯安裝配置

tar -zxvf nginx-1.12.2.tar.gz
./configure \

在這裏插入圖片描述
8、編譯安裝Nginx

make && make install

在這裏插入圖片描述
8、配置Nginx軟鏈接

ln -s /usr/local/nginx/sbin/nginx  /usr/bin/nginx

在這裏插入圖片描述
9、啓動Nginx,測試
在這裏插入圖片描述
在這裏插入圖片描述

三、配置Nginx服務器,啓動flask項目

1、備份Nginx配置文件
在這裏插入圖片描述
2、打開配置文件,進行配置

server {
        listen       80;
        server_name  FlaskStudentBluePrint;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;
        access_log /opt/script/flask.log;
        error_log /opt/script/flaskError.log;

        location / {
            include uwsgi_params;# 導入uwsgi配置 
            uwsgi_pass 127.0.0.1:5000;# 轉發端口,需要和uwsgi配置當中的監聽端口一致

            uwsgi_param UWSGI_CHDIR /opt/FlaskStudentBluePrint;# 項目根目錄
            uwsgi_param UWSGI_SCRIPT manage:app;# 項目的主程序,比如你測試用manage.py文件,文件中app = Flask(__name__),那麼這裏就填manage:app
        }

在這裏插入圖片描述
在這裏插入圖片描述

3、啓動nginx和uwsgi,測試啓動項目效果
在這裏插入圖片描述
測試成功:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章