PythonWeb 服務部署文件及遷移到Linux相關
pythonWeb的部署(Django+Uwsgi):
1、 部署伺服器上需要的Python3.6環境:
安裝集成了python3.6 和pip ,virtualenv虛擬環境 的Anaconda(Anaconda3-5.0.1-Lin-x86_64.sh)
下載地址 :https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.0.1-Linux-x86_64.sh
下載完成後放到伺服器的/root目錄下,
在/root目錄下執行 “bash Anaconda3-5.0.1-Lin-x86_64.sh“ 進行安裝,
安裝過程中當遇到【yes/no】的提示時,選擇yes,
等待安裝完畢,修改伺服器上的預設python版本為Anaconda中的python,
執行“vim /etc/profile”,在最後一行輸入” export PATH=/root/anaconda3/bin:$PATH”,
Esc +“:wq”儲存後,執行“source /etc/profile”重新整理配置。
此時修改python環境完成,輸入python –version檢視當前預設python版本。
2、 配置uwsgi(必須完成第一步配置python環境後才可配置uwsgi,否則版本不對,出錯):
下載uwsgi(uwsgi-2.0.17.1.tar.gz)的壓縮包,
下載地址為:https://pypi.org/project/uWSGI/#files ,
下載完成後傳輸到伺服器的/root 目錄下,
在/root目錄下執行“tar –zxvf uwsgi-2.0.17.1.tar.gz”進行解壓,
cd 到被解壓的uwsgi目錄下,執行‘“make”進行安裝,等待安裝完成,
執行“./uwsgi --version”檢視版本並確認是否安裝成功。
3、 部署相應的Django-pythonWeb服務:
將需要進行部署的pythonWeb資料夾放到/root目錄下,
cd 到該pythonWeb資料夾下,既manage.py所在的那一級目錄,
執行“vim pythonWebUwsgi.ini”編寫對應此web服務的uwsgi配置檔案,配置檔案可隨意命名,字尾為ini,配置檔案內容為:
[uwsgi] chdir = /root/sendPost module = sendPost.wsgi:application http = 127.0.0.1:8000 master = true |
解釋下每一行:第一行必寫,否則uwsgi無法識別此配置檔案
第二行專案所在路徑,第三行對應wsgi.py所在路徑
第四行為主機和埠號,第五行設定預設主程序執行
4、uwsgi服務的啟動和停止:
啟動:在uwsgi目錄下,執行“./uwsgi xxxx/pythonWebUwsgi.ini” 既在uwsgi目錄下啟動我們專案下自己配置的uwsgi配置檔案。
停止:“Ctrl+C” 或者 “killall -9 uwsgi”
PS:
Linux上安裝python(我沒有用到,只是單純的記錄下)
python解壓包放上去,mv python-xx /opt/
cd /opt/
tar -xzvf Python-3.6.1.tgz -C /usr/local/src/
cd /usr/local/src/Python-3.6.1
./configure --prefix=/usr/local/python3
make && make install
cd /etc/profile.d/
vim python3.sh
export PATH="$PATH:/usr/local/python3/bin"
source ../profile
echo $PATH
mv /usr/bin/python /usr/bin/python2.6
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python
python --version
#vi /usr/bin/yum
把檔案頭部的#!/usr/bin/python改成#!/usr/bin/python2.6