基於Ubuntu16.04的django+uwsgi+nginx安裝部署

最近由於導師的一點破事,我一個從來沒有搞過後臺的人來搞後臺,由於只會用python,所以沒得選,只能由題目的套裝。這三個東西的網上教程坑非常之多。我們一步一步來。

首先是一臺無瑕,沒有被玷污過的新機子。

一、安裝虛擬環境

別問爲啥要裝,裝就完事了,ubuntu裏面默認的是py2,現在一般都是py3了,按步驟來
安裝python3-venv

apt-get install python3-venv

接下來cd到你想去的目錄下創建虛擬環境ven(名字比較隨意)

python3 -m venv ven

ven/bin中的python是3.5的
接下來激活虛擬環境,cd到ven/bin目錄下

source activate

接下來你會看到你命令行的前面有個(ven),這就是激活啦。
退出虛擬環境也得cd到ven/bin目錄下

source deactivate


二、安裝django

這個簡單哈

pip install django

注意要在虛擬環境下這麼幹

三、安裝uwsgi

安裝這個需要先裝一下其他工具


sudo apt-get install python3-setuptools
sudo apt-get install python3-dev
pip install uwsgi


注意:按照這個時候,其餘的教程就會讓你測試了,其實這個測試容易出很多的問題,我推薦先不要急着測試,只要pip install uwsgi沒有出現問題就暫時不要管這個


四、安裝nginx

先更新一下哈

sudo apt-get update

再安裝nginx

sudo apt-get install nginx

五、接下來乾的事情

首先再項目目錄下新建一個uwsgi.ini文件

[uwsgi]
chdir   = /你的路徑/項目
module  = 項目名稱.wsgi
master  = true
processes = 10
socket  = :8000
vacuum  = true
pythonpath = /你的虛擬環境的路徑/lib/python3.5/site-packages/ #這個需要具體調整

然後再新建一個nginx.conf文件

upstream django {
    server 0.0.0.0:8000;
    }
server {
listen 80;
server_name me 你的域名或者ip;
charset utf-8;
client_max_body_size 75M;
Django media
location /media {
    alias /你的路徑/項目/media;  # 指向django的media目錄
    }

location /static {
    alias /你的路徑/項目/static; # 指向django的static目錄
    }

location / {
    uwsgi_pass  django;
    include  uwsgi_params;
}
}

寫好之後把這個玩意鏈接到uwsgi的啓動配置文件中

ln -s /你的目錄/項目/nginx.conf  /etc/nginx/conf.d/

都搞定之後,重啓一下nginx

service nginx restart

cd到你的項目目錄下,開啓uwsgi

uwsgi -i uwsgi.ini

不出意外大功告成,然後這個時候如果沒問題,首先回去在目錄下新建run.log文件,然後修改一下uwsgi.ini文件,新增兩行

daemonize = /你的路徑/項目/run.log
disable-logging = true

這樣的話就會將日誌信息保存至run.log裏面,而且不記錄正常信息,要不然就爆了。






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章