最近一星期加班为学校做了一个教师发展中心平台,在此总结一下部署经验
环境: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 永久更新源办法 修改配置文件 在主目录下创建.pip文件夹 mkdir ~/.pip 然后在该目录下创建pip.conf文件 vi pip.conf 写入以下内容 [global] trusted-host = pypi.douban.com index-url = 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