由于windows10是日常辦公電腦,沒有服務器基本環境,部署工程耗費不少時間,記錄一下。
1、安裝Python
訪問Python官方下載頁面:Python Downloads,下載適用于Windows的安裝程序并按照提示進行安裝。開發環境python版本是3.11.5,我們這里也選擇的3.11.5
打開PowerShell,然后輸入以下命令檢測安裝成功與否:
python --version
2、安裝MySQL
訪問MySQL官方下載頁面:MySQL Downloads,下載適用于Windows的安裝程序并按照提示進行安裝。
在安裝過程中,您將需要配置MySQL root用戶的密碼,并根據需要配置其他選項。
3、代碼遷移
考慮到后期更新代碼的方便,采用了git方式遷移代碼。這邊踩了不少坑,感謝網上各位的分享,最終順利解決。
? ? ? ? 3.1 先在win10中安裝git
? ? ? ? 3.2 創建項目目錄和裸倉庫? ? ??
? ? ? ? ? ? ? ? 在win10中,創建項目目錄d:\wwwroot\djangoprj
? ? ? ? ? ? ? ? 為項目創建一個裸倉庫:
git init --bare d:\gitrepos\djangoprj.git
? ? ? ? 3.3 讓macOS 和 Windows10建立連接
? ? ? ? ? ? ? ? 在windows中共享文件夾gitrepos, 并設置相應權限。
? ? ? ? ? ? ? ? 在mac中通過finder的連接服務器,連接到windows。在這個過程中windows中權限設置很多,參考這篇 Mac無法通過smb連接到windows的共享文件夾?才終于得到解決!
? ? ? ?
????????3.4 初始化項目倉庫并推送代碼
? ? ? ? ? ? ? ? 在mac中的項目目錄下運行:
git init
git add .
git commit -m "Initial commit"#在本地倉庫添加服務器倉庫并推送代碼git remote add production /Volumes/gitrepos/djangoprj.git
git push production master
????????
? ? ? ? 3.5 克隆代碼到項目目錄中
? ? ? ? ? ? ? ? 在windows d:\wwwroot\下 運行:
git clone d:\gitrepos\djandoprj.git djandoprj
4、安裝項目依賴?
? ? ? ? 先為項目創建虛擬環境,然后再安裝項目依賴的庫。
? ? ? ? ?在D:\wwwroot目錄下運行:
????????
python -m venv venv
? ? ? ? ?激活虛擬環境:
.\\venv\\Scripts\\activate
? ? ? ? 在項目目錄下安裝依賴的庫,運行:
pip install -r requirements.txt
5、配置mysql數據庫
6、設置setting.py以適合生產環境
? ? ? ? 我們一個簡單項目沒有涉及靜態文件,就不需要設置static_root
7、 下載并部署到服務器waitress
? ? ? ? 因為我們項目只有admin后臺實現一些CRUD操作,不涉及靜態文件及其他復雜操作,就只用waitress運行項目,后期如有不合適再添加nginx.
? ? ? ? 7.1 安裝waitress:
????????????????在項目目錄d:\wwwroot\smallorder的虛擬環境中
pip install waitress
? ? ? ? 7.2 編寫一個簡單Waitress服務啟動腳本:
????????????????在?Django 項目根目錄下創建一個 Python 腳本?runserver.py
:
from waitress import serve
from myproject.wsgi import applicationif __name__ == "__main__":serve(application, host='0.0.0.0', port=8000)
? ? ? ? ? ? ? ? 這樣就可以通過使用命令python runserver.py來啟動 Waitress 服務器?
8、后期更新代碼方法
? ? ? ? 8.1 在 macOS 中進行代碼更新???
????????????????打開終端并導航到項目目錄
git add .
git commit -m "code add"
#退出更改到服務器裸倉庫
git push production master
? ? ? ? 8.2 在 Windows 服務器上拉取更新? ? ?
????????????????打開命令提示符并導航到項目目錄:
cd d:\wwwroot\djangoprj
git pull production master