linux 部署django專案

2021-10-04 02:34:25 字數 3506 閱讀 6338

1.安裝python直譯器:跳轉

2.安裝mysql:跳轉

3.建立資料庫並匯入資料

# 匯出:

mysqldump -u root -p test > test .sql

# 匯入:

mysql -uroot -p test < test .sql

4.建立虛擬環境:跳轉

5.上傳django專案**到linux伺服器

6.解決專案執行時需要的模組依賴

匯出windows系統下直譯器的所有模組資訊,通過命令一鍵安裝所有的模組

在windows系統下匯出直譯器的模組資訊

pip3 freeze >  requirements.txt
在linux系統下通過命令安裝

-r requirements.txt7.安裝uwsgi

uwsgi8.建立uwsgi的配置檔案

cd /opt/rikkac

touch uwsgi.ini

[uwsgi]

# django-related settings

# the base directory (full path)

# 填寫專案的完整絕對路徑,第一層

chdir =

/opt/rikkac

# django's wsgi file

#指定django的wsgi檔案路徑,填寫相對路徑

module = rikkac.wsgi

# the virtualenv (full path)

#填寫虛擬環境的絕對路徑 可以通過cdvirtualenv切換到虛擬環境路徑

home =

/opt/venv/rikkac

# process-related settings

# master

master = true

# maximum number of worker processes

#定義程式的多程序數量的,以cpu核數的2倍+1數量填寫 2n+1 數量

processes =

9# the socket (use the full path to be safe

#把uwsgi啟動在socket協議上,的8000埠

socket =

0.0.0.0:

8000

#指定http協議的話,使用者是可以直接訪問到的,不安全的,建議使用socket協議

vacuum = true

9.啟動uwsgi

uwsgi -

-ini wgsgi.ini

10.安裝nginx:鏈結

11.配置nginx

server 

}

12.處理django專案靜態檔案

# 修改django的settings.py配置檔案,新增如下配置

static_url =

'/static/'

static_root=

'/opt/rikkacstatic'

13.使用命令收集專案的所有靜態檔案

python3  manage.py collectstatic
14.配置nginx處理靜態檔案請求

location  /static
15.重啟uwsgi

16.重啟nginx

17.使用supervisor管理uwsgi的後台安裝

yum install supervisor
生成配置檔案

echo_supervisord_conf >  /etc/supervisor.conf
新增配置檔案,載入django專案

[program:rikkac]  ;任務名稱

command=/opt/python367/bin/uwsgi --ini /opt/rikkac/uwsgi.ini ; 程式啟動命令 ,uwsgi命令的絕對路徑和配置檔案的絕對路徑

autostart=true ; 在supervisord啟動的時候也自動啟動

stopasgroup=true ;預設為false,程序被殺死時,是否向這個程序組傳送stop訊號,包括》子程序

killasgroup=true ;預設為false,向程序組傳送kill訊號,包括子程序

啟動supervisord服務端

# 啟動前確保uwsgi已關閉

supervisord -c /etc/supervisord.conf

進入supervisor的管理互動式終端,管理任務

supervisorctl -c /etc/supervisord.conf 

# supervisor的管理命令

status #檢視狀態

start all

#啟動所有任務

restart all

#重啟所有任務

*部署到linux上後datetimefield獲取時間與linux系統時間不匹配解決問題

date = models.datetimefield(verbose_name=

'建立日期'

,auto_now_add=

true

)#資料庫中的日期字段新增了auto_now_add後發現實際獲取的時間並不是linux的系統時間

# 這裡需要在settings中改一下時區就可以了

time_zone = 『asia/shanghai』

Linux下部署Django專案

目錄 安裝python3.x環境 安裝部署開啟django 由於linux系統預設自帶的是2.x環境,所以我們需要去安裝3.x環境的python。wget2 接著解壓這個壓縮包,命令如下 tar xvf python 3.6.3.tar.xz3 接著編譯安裝,進入解壓後的目錄,執行底下的乙個shel...

部署django專案

在你專案的根目錄中建立mysite.xml 名字無所謂 或者建立mysite.ini,輸入以下內容 uwsgi socket 127.0.0.1 8000 socket chdir data project1 chdir module project1.wsgi module processes 4...

linux部署django專案流程(全)

yum install zlib devel bzip2 devel openssl devel ncurses devel sqlite devel readline devel tk devel gcc make ypip freeze packet.txtpip3 install r pack...