采用flask+uwsgi+nginx架構將flask應用程序部署在騰訊雲


 最近一星期加班為學校做了一個教師發展中心平台,在此總結一下部署經驗

 環境:Centos7.0  python2.7.5

 1.安裝nginx

    命令行輸入指令:sudo yum install nginx

   2.安裝pip

    1. sudo yum –y install epel-release
    2. sudo yum –y install python-pip


 3.安裝virtualenv
    pip install virtualenv

    在應用程序目錄創建虛擬環境 virtualenv venv

 4.激活虛擬環境
    在目錄下home/magicroc/flasky
    virtualenv venv
    source /bin/activate

 5.虛擬環境下安裝uwsgi服務器
    pip  install uwsgi   (需安裝三個庫 )
      1.sudo yum install libxml2
      2.sudo yum install gcc
      3.sudo yum install python-devel

 6.安裝flask應用程序依賴包
    因為pip安裝時速度太慢,所以決定更改為pip國內源
    對指定包對安裝臨時使用豆瓣源
    pip install flask_sqlalchemy –i http://pypi.douban.com/simple

    永久更新源辦法  修改配置文件
    在主目錄下創建.pip文件夾
    mkdir ~/.pip
    然后在該目錄下創建pip.conf文件
    vi pip.conf
    寫入以下內容
    [global]
    trusted-host = pypi.douban.com
    index-url = http://pypi.douban.com/simple




  7.修改nginx配置文件(最后不要直接修改nginx.conf默認文件,筆者這里是直接修改默認配置文件,不過不推薦這種行為)

    vi etc/nginx/nginx.conf

    server {
      listen  80;
      server_name XXX.XXX.XXX; #公網地址

      location / {
    include      uwsgi_params;
    uwsgi_pass   127.0.0.1:8001;  # 指向uwsgi 所應用的內部地址,所有請求將轉發給uwsgi 處理
    uwsgi_param UWSGI_PYHOME /home/magicroc/flasky/venv; # 指向虛擬環境目錄
    uwsgi_param UWSGI_CHDIR  /home/magicroc/flasky; # 指向網站根目錄
    uwsgi_param UWSGI_SCRIPT manage:app; # 指定啟動程序
      }
    }


    啟動nginx:命令行輸入nginx
    關閉nginx:ps -ef|grep nginx
              查看nginx 線程ID
               kill -QUIT 線程ID

  8.修改uwsgi配置文件
    進入flask應用程序目錄 vi config.ini
    [uwsgi]
    # uwsgi 啟動時所使用的地址與端口
    socket = 127.0.0.1:8001 
    # 指向網站目錄
    chdir = /home/magicroc/flasky 
    # python 啟動程序文件
    wsgi-file = manage.py 
    # python 程序內用以啟動的 application 變量名
    callable = app 
    # 處理器數
    processes = 4
    # 線程數
    threads = 2
    #狀態檢測地址
    stats = 127.0.0.1:9191

    uwsgi 啟動 :虛擬環境下uwsgi config.ini
    uwsgi 關閉:虛擬環境下killall -9 uwsgi

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM