Centos部署django服务nginx+uwsgi Centos部署django服务nginx+uwsgi的方法
瓦力冫 人气:01.安装python3
yum -y install wget gcc make zlib-devel readline-devel bzip2-devel ncurses-devel sqlite-devel gdbm-devel xz-devel tk-devel openssl-devel wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz xz -d Python-3.6.1.tar.xz tar -xvf Python-3.6.1.tar cd Python-3.6.1 ./configure --prefix=/usr/local/python3.6 --enable-optimizations make make install ln -s /usr/local/python3.6/bin/python3 /usr/bin/python3 ln -s /usr/local/python3.6/bin/pip3 /usr/bin/pip3
这是通过编译的方式来安装的
输入 python3 –version 和 pip3 –version 进行测试
2. 安装nginx
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm sudo yum install -y nginx sudo systemctl start nginx.service
通过你的域名或IP来访问你的Web页面来预览一下Nginx的默认页面进行测试
3.下载代码,上传到服务器的/var/www 目录
4. 安装依赖
pip3 install django pip3 install uwsgi ln -s /usr/local/python3/bin/uwsgi /usr/bin/uwsgi3
5. 独立运行进行测试
cd /var/www/dexundjango python3 manage.py runserver 0.0.0.0:8014
测试通过后,Ctrl + C 停止运行
6.uwsgi
sudo mkdir -p /etc/uwsgi/sites sudo mkdir -p /var/log/uwsgi cd /etc/uwsgi/sites sudo vi /etc/uwsgi/sites/mysite.ini
[uwsgi] socket = 127.0.0.1:10000 chdir=/var/www/dexundjango module=mysite.wsgi:application master=True pidfile=/tmp/project-master.pid vacuum=True max-requests=5000 daemonize=/var/log/uwsgi/mysite.log
7. nginx 配置
vi /usr/local/nginx/conf/nginx.conf (根据本地的配置路径) find / -name uwsgi_params 来替换下面的uwsgi_params路径
server { listen 8014; #暴露给外部访问的端口 server_name localhost; charset utf-8; location / { include /usr/local/nginx/conf/uwsgi_params; uwsgi_pass 127.0.0.1:10000; # 必须和uwsgi.ini配置的端口一致 } location /static/ { alias /home/www/dexundjango/trade/static/; #项目静态路径设置 }
8. 启动uwsgi
uwsgi3 --ini /etc/uwsgi/sites/mysite.ini
9. 开机启动uwsgi
vi /etc/init.d/uwsgi
#!/bin/bash # chkconfig: - 85 15 uwsgi=/usr/bin/uwsgi3 api_conf=/etc/uwsgi/sites/mysite.ini case $1 in start) echo -n "Starting uWsgi" nohup $uwsgi -i $api_conf >/var/log/uwsgi/project-api.log 2>&1 & echo " done" ;; stop) echo -n "Stopping uWsgi" killall -9 uwsgi echo " done" ;; restart) $0 stop $0 start ;; show) ps -ef|grep uwsgi ;; *) echo -n "Usage: $0 {start|restart|stop|show}" ;; esac
chmod +x /etc/init.d/uwsgi chkconfig --add uwsgi chkconfig uwsgi on
加载全部内容