安装软件
1、python虚拟环境搭建:
pip3 install virtualenv virtualenvwrapper:参考https://www.jianshu.com/p/9ee09e2657c3
2、安装django
pip3 install django==1.11.10
3、安装uwsgi
pip3 install uwsgi
安装uwsgi可能遇到的问题:
(1)缺c++编译器,yum install -y gcc gcc-c++
(2)缺python-devel,yum install python3-devel.x86_64 【注意是python3】
创建一个django项目,并在项目根目录下创建uwsgi.ini文件
文件内容如下:
[uwsgi]
project_base = /home/nginx
project_name = 'xxx_app'
# 项目目录全局变量,注意后面不要加 /
http = 0.0.0.0:3033
#使用http, 可以直接对外服务
#socket = 127.0.0.1:3033
#使用 socket,必须使用nginx uwsgi_pass 代理才能对外服务
stats = 0.0.0.0:4033
#监听与状态的IP和端口
daemonize = /var/log/nginx/%(project_name).uwsgi.log
#后台启动,并把日志记录到指定文件
home=/root/.virtualenvs/venv_pdf2html
# 配置虚拟python环境路径
chdir = %(project_base)/%(project_name)
#项目根目录
wsgi-file = %(project_base)/%(project_name)/pdf_to_html/wsgi.py
pidfile = %(project_base)/%(project_name)/uwsgi_master.pid
启动、停止、重新加载uwsgi
uwsgi --ini /home/nginx/xxx_app/uwsgi.ini
uwsgi --reload /home/nginx/xxx_app/uwsgi_master.pid
uwsgi --stop /home/nginx/xxx_app/uwsgi_master.pid
可以创建3个bash文件,方便启动停止重载过程,例如:在项目bin目录下(如果没有就创建)创建10_run_uwsgi.sh,内容如下:
#! /bin/bash
#加载环境变量,主要是virtualwrapper的配置
source ~/.bash_profile
#进入虚拟环境
workon venv_pdf2html
# 进入项目目录
cd /home/nginx/xxx_app
# 启动uwsgi
uwsgi --ini /home/nginx/xxx_app/uwsgi.ini
其他两个文件类似,只是最后一行的不同
进入项目目录:/home/nginx/xxx_app
启动uwsgi:bin/10_run_uwsgi.sh
停止uwsgi:bin/12_stop_uwsgi.sh
重新加载uwsgi:bin/11_reload_uwsgi.sh
监控日志:tail -f /var/log/nginx/xxx_app.log
网友评论