Flask + Nginx + uwsgi 部署过程
一、安装Flask
1、itsdangerous
tar xvf itsdangerous-0.23.tar.gz cd itsdangerous-0.23/ python setup.py install
2、Werkzeug
tar xvf Werkzeug-0.9.4.tar.gz cd Werkzeug-0.9.4/ python setup.py install
3、Jinja2
tar xvf Jinja2-2.6.tar.gz cd Jinja2-2.6/ python setup.py install
Flask依赖上面三个包,如果可以连接外网,可以直接安装Flask:
tar xvf Flask-0.10.tar.gz cd Flask-0.10/ python setup.py install
二、安装相关插件
1、SQLAlchemy 数据库中间件
tar xvf SQLAlchemy-0.9.0b1.tar.gz cd SQLAlchemy-0.9.0b1/ python setup.py install
2、WTForms 表单模块
unzip WTForms-1.0.5.zip cd WTForms-1.0.5/ python setup.py install
3、Flask-WTF Flask包装了一下的表单模块
tar xvf Flask-WTF-0.9.3.tar.gz cd Flask-WTF-0.9.3/ python setup.py install
4、安装PIL
tar xvf Imaging-1.1.7.tar.gz cd Imaging-1.1.7/ ----------------------- #修改setup.py文件 FREETYPE_ROOT = None FREETYPE_ROOT = '/usr/lib64','/usr/include/freetype2/freetype' ----------------------- python setup.py install
三、安装Nginx
参考http://www.linuxde.net/2013/07/14933.html
四、安装uwsgi
tar xvf uwsgi-1.4.10.tar.gz cd uwsgi-1.4.10/ python uwsgiconfig.py --build python setup.py install
五、配置整合
1、nginx站点配置:
server{ listen 80; server_name admin.lihuipeng.com; access_log /data/nginx_logs/access_localhost.log main; root /data/admin/AdminBackstage; location /static { alias /data/admin/AdminBackstage/static; } location / { include uwsgi_params; uwsgi_pass 127.0.0.1:5000; #uwsgi_pass unix:/tmp/uwsgi.sock; } }
2、在网站根目录建立uwsgi启动配置文件
<uwsgi> <pythonpath>/data/admin/AdminBackstage</pythonpath> #网站根目录 <module>runServer</module> #Flask的主入口文件,平时是直接运行这个文件启动测试服务器的 <callable>app</callable> #runServer.py入口文件里的程序入口 <socket>127.0.0.1:5000</socket> #监听端口 <master/> <processes>5</processes> #注:跑几个线程,这里用4个线程 <memory-report/> </uwsgi>
3、启动uwsgi
uwsgi -x uwsgi_config.xml -d uwsgi.log