天天看點

django-nginx與uwsgi項目部署

uwsgi是提供動态服務的

nginx反向代理

 在項目中建立一個settings.py的副本。我這裡重命名為copy_settings.py,将配置檔案中的DEBUG=False

django-nginx與uwsgi項目部署

修改項目下wsgi.py的啟動配置檔案名稱

django-nginx與uwsgi項目部署

環境配置:

  第一步:在Linux系統中建立一個運作虛拟環境 執行:mkvirtualenv -p /usr/bin/python3.6 copymysite

django-nginx與uwsgi項目部署

  第二步:将開發項目中虛拟環境中的依賴包安裝到建立的這個虛拟環境中

2-1:首先進入開發項目的虛拟環境中導出包清單

django-nginx與uwsgi項目部署

檢視項目依賴的包

django-nginx與uwsgi項目部署

2-2  在新建立的正式虛拟環境中安裝上面的包(如果上面有些包是通過離線包安裝的,就需要從清單中删除,然後通過離線包安裝)

django-nginx與uwsgi項目部署

檢視安裝的包就和開發環境中的包是一樣的

django-nginx與uwsgi項目部署

第三步:安裝uwsgi

django-nginx與uwsgi項目部署

測試uwsgi是否安裝成功,在項目中建立一個deploy檔案夾,在裡面建立一個測試檔案test.py檔案

django-nginx與uwsgi項目部署

執行測試指令,一定要進入到目前測試檔案的路徑中

django-nginx與uwsgi項目部署

浏覽器測試:

django-nginx與uwsgi項目部署

第四步:配置uwsgi,在deploy檔案中建立一個uwsgi_conf.ini檔案和logs檔案夾,配置内容如下:

django-nginx與uwsgi項目部署

第五步:啟動uwsgi,進入虛拟環境切換到項目中的deploy檔案目錄中

啟動uwsgi:uwsgi --ini uwsgi_conf.ini &

停止uwsgi:uwsgi --stop uwsgi.pid

sudo pkill -f uwsgi 全部停止後uwsgi 會自動重新開機

檢視狀态

 ps aux|grep uwsgi

第六步:Nginx安裝與配置

6-1:安裝nginx  首先執行 sudo apt update -y

django-nginx與uwsgi項目部署

 執行安裝:sudo apt install nginx -y

django-nginx與uwsgi項目部署

開啟和檢視開啟狀态:

django-nginx與uwsgi項目部署

測試:

django-nginx與uwsgi項目部署

 第七步:項目中添加nginx配置檔案,在deploy檔案夾中建立nginx_conf.conf配置檔案,内容如下:

7-1

django-nginx與uwsgi項目部署

Nginx配置檔案

  

 7-2:将上面建立的配置檔案複制到 /etc/nginx/conf.d檔案夾中去或者加入到配置中

 注意:将該配置檔案加入到nginx的啟動配置檔案中 擷取覆寫原配置檔案

  sudo ln -s 你的目錄/mysite/deploy/nginx_conf.conf

django-nginx與uwsgi項目部署

7-3:如果是第一次使用nginx 需要添加使用者到nginx.conf 配置檔案中

django-nginx與uwsgi項目部署

 7-4:測試nginx配置檔案是否正确

django-nginx與uwsgi項目部署

7-5:重新加載配置

  sudo nginx -c /etc/nginx/nginx.conf

  sudo nginx -s reload

  重新開機nginx sudo systemctl restart nginx

  重新開機第二中方式:

    pkill  -f ninx

    nginx 

完成部署,在浏覽器中輸入IP位址即可通路網站了........

設定開機啟動

   sudo systemctl enable nginx.service

繼續閱讀