天天看點

Ubuntu部署Django項目方法詳解

配置鏡像源就不說了,前面的文章好像已經講過如何配置鏡像源,如果你沒配置鏡像源,下載下傳回很慢很慢的。

一、更新作業系統和安裝依賴包

1-分别執行一下指令,更新安裝包

sudo apt-get update

sudo apt-get upgrade      

2-安裝上傳rz、下載下傳sz工具。可能要十分鐘。

sudo apt-get install lrzsz      

3-安裝gcc g++的依賴庫

sudo apt-get install libpcre3 libpcre3-dev      

4-安裝 pcre依賴庫

sudo apt-get install zlib1g-dev      

5-安裝 ssl依賴庫

sudo apt-get install openssl      

二、安裝Python3和PIP3

sudo apt install python3

sudo apt install python3-pip      

三、建立兩個檔案夾,用于存放virtualenv環境和項目

#放虛拟環境的
sudo mkdir -p /data/env

#放項目的
sudo mkdir -p /data/wwwroot      

四、安裝virtualenv

sudo pip3 install virtualenv      

進入env目錄

cd /data/env      

指定Python版本,建立名為pyweb的虛拟環境,

sudo virtualenv -p /usr/bin/python3 pyweb      

指定Python版本的時候,如果不知道Python3的路徑,可以使用下面的指令檢視

which python      

五、啟動虛拟環境

啟動虛拟環境

source /data/env/pyweb/bin/activate      

六、上傳項目并安裝依賴軟體庫(虛拟環境下)

把我們開發好的項目上傳到 /data/wwwroot/目錄,然後進入該目錄,先安裝項目所需要的依賴包,然後啟動項目,測試是否能正常啟動。

我這裡給大家一個測試項目,大家可以用來測試,帳号和密碼分别為:admin qq445813。mysite.zip

sudo pip3 install -r requirements.txt

python3 manage.py runserver      

如果能正常啟動,說明項目沒啥問題。

七、安裝uwsgi

sudo pip3 install uwsgi      

留意:uwsgi要安裝兩次,先在系統裡安裝一次,然後進入對應的虛拟環境安裝一次。

八、安裝nginx,并配置

/usr/local 目錄執行下面指令下載下傳nginx源碼:

sudo wget http://nginx.org/download/nginx-1.13.7.tar.gz      

然後解壓它:

sudo tar -zxvf nginx-1.13.7.tar.gz      

cd 進入解壓後的nginx-1.13.7檔案夾

cd nginx-1.13.7/      

依次執行以下指令:

sudo ./configure 
sudo make 
sudo make install      

nginx一般預設安裝好的路徑為/usr/local/nginx

進入/usr/local/nginx/conf/目錄,然後備份一下nginx.conf檔案,以防意外。

sudo cp nginx.conf nginx.conf.bak      

然後打開nginx.conf檔案,把裡面的内容全部删除,輸入下面代碼:

events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    server {
        listen       80;
        server_name  www.django.cn;
        charset utf-8;
        location / {
           include uwsgi_params;
           uwsgi_pass 127.0.0.1:8997;
           uwsgi_param UWSGI_SCRIPT mysite.wsgi;
           uwsgi_param UWSGI_CHDIR /data/wwwroot/mysite/; #項目路徑
           
        }
        location /static/ {
        alias /data/wwwroot/mysite/static/; #靜态資源路徑
        }
    }
}      

需要留意的是,下圖長方形裡我标記的代碼要和UWSGI配置檔案mysite.xml一緻,否則會出錯。

Ubuntu部署Django項目方法詳解

至于靜态資源路徑,自己settings.py裡怎麼設定,你就按那個設定就好。

進入/usr/local/nginx/sbin/目錄

執行下面指令先檢查配置檔案是否有錯:

./nginx -      

沒有錯就執行以下指令:

./nginx      

終端沒有任何提示就證明nginx啟動成功。

之後進入網站項目目錄

cd /data/wwwroot/mysite/      

執行下面指令(虛拟環境下):

uwsgi -x mysite.xml      

以上步驟都沒有出錯的話。

執行:

./nginx -s reload      

然後在浏覽器裡通路你的項目位址!這時項目就能成功通路。