zoukankan      html  css  js  c++  java
  • 采用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

      

  • 相关阅读:
    RPC学习
    json
    jsf
    ajax分析
    async分析
    web后台
    servlet和CGI区别(转)
    forward和redirect
    (转)jvm
    Async分析
  • 原文地址:https://www.cnblogs.com/magicroc/p/6085153.html
Copyright © 2011-2022 走看看