騰訊雲快速完成python3.6開發環境搭建與django應用部署


[本文出自天外歸雲的博客園]

部署python3.6.5

騰訊雲服務器安裝python3竟然要3個多小時!而且一度速度為0……

於是網查據說是騰訊雲服務器連python官網緩慢導致的,所以想找個國內的python3.6的下載地址進行安裝,-_-||沒找到。

於是決定通過本地上傳的方法把python3傳到騰訊雲服務器上,先把python3先下載到本地然后傳到騰訊雲上就可以了。

首先要下載一個winscp到本地,安裝並啟動winscp。

填寫騰訊雲的ip、端口(默認是22)、登錄服務器的用戶名和密碼完成winscp對linux服務器的登錄,至此就可以在本地看到在騰訊雲上的文件目錄了。

把本地的python3.6拖拽到winscp里就可以完成上傳:

之后就可以在騰訊雲服務器的根目錄下看到剛剛上傳的python3.6文件了,先解壓縮一下:

tar -zxvf Python-3.6.5.tgz

至此這就把python3.6.5傳到騰訊雲服務器上了:

接下來還要安裝python3.6.5,首先創建一個python3文件夾,執行以下命令:

mkdir /usr/local/python3

在根目錄下進入解壓后的python3.6.5目錄:

cd Python-3.6.5

執行配置命令:

./configure --prefix=/usr/local/python3

我的騰訊雲服務器是centos系統,執行以上命令遇到了如下報錯:

error: no acceptable C compiler found in $PATH

原因是需要先安裝gcc,執行以下命令安裝gcc:

yum install gcc

然后再執行配置命令就可以了。

然后安裝python3,在python3.6.5解壓后的目錄下執行:

make
make install

編輯配置文件:

vi /etc/profile

進入編輯模式:

i 

在 export PATH 之前加上:

PATH=/usr/local/python3/bin:$PATH

按esc保存修改並退出:

:wq

執行以下命令使配置生效:

source /etc/profile

至此python3.6.5安裝完畢:

 

安裝setuptools

根目錄下執行命令下載並解壓setuptools:

wget --no-check-certificate https://pypi.python.org/packages/source/s/setuptools/setuptools-19.6.tar.gz#md5=c607dd118eae682c44ed146367a17e26
tar -zxvf setuptools-19.6.tar.gz

在解壓后的setuptools目錄下進行安裝:

cd setuptools-19.6.tar.gz
python3 setup.py build
python3 setup.py install

報錯提示RuntimeError: Compression requires the (missing) zlib module,執行命令:

yum install zlib
yum install zlib-devel

然后去python3.6.5解壓包目錄下執行命令:

make
make install

然后再回到setuptools目錄下執行命令:

python3 setup.py install

至此setuptools安裝好了。

 

安裝pip

在根目錄下執行命令下載並解壓pip:

wget --no-check-certificate https://pypi.python.org/packages/source/p/pip/pip-8.0.2.tar.gz#md5=3a73c4188f8dbad6a1e6f6d44d117eeb
tar -zxvf pip-8.0.2.tar.gz

在pip解壓后的目錄下安裝pip:

cd pip-8.0.2
python3 setup.py build
python3 setup.py install

然后我們在/usr/local/python3/bin目錄下就可以看到已經成功安裝了pip。

但是用pip安裝django又報錯了,提示cannot import name HTTPSHandler,執行以下命令:

yum install openssl
yum install openssl-devel

然后重新編譯安裝python:

cd /usr/local/Python-3.6.5
make
make install

至此需要再重新安裝一下pip:

cd ~/pip-8.0.2
python3 setup.py build
python3 setup.py install

至此pip安裝完成。

 

安裝更多依賴庫

把本地python3環境安裝的依賴庫導入到requirements.txt:

pip freeze > requirements.txt

然后用winscp把這個文件傳到騰訊雲並安裝:

pip install -r requirements.txt

依賴庫默認走的騰訊雲鏡像,所以下載安裝會很快。

如果遇到了哪個庫安裝失敗了,vi編輯requirements.txt文件,在安裝失敗的python庫所在行雙擊d刪除該行,並把之前的行也都dd刪除了,按esc輸入:wq保存並退出編輯。

然后再通過以上命令安裝requirements.txt文件中剩下的python庫即可。

注意:如果安裝sqlite3的python庫成功后依然引入失敗,需要重新編譯安裝一下python3:

cd Python-3.6.5
./configure --prefix=/usr/local/python3
make
make install

 

Django應用部署

Python3.6.5的環境已經搭建完畢,之后就可以在騰訊雲服務器啟動應用了,我這里部署了一個django應用。

首先git clone我的django代碼到騰訊雲服務器,當我修改了應用代碼后,我進入應用(backloud)所在目錄並通過git pull更新代碼,之后通過命令啟動django應用:

python3 manage.py runserver 0.0.0.0:8000

可以看到服務起來了:

通過ip和端口號對web應用進行訪問,可以在騰訊雲服務器后台看到訪問日志:

至此就已經成功在騰訊雲上搭建了python3.6.5的開發環境並部署了django應用。

在后台運行django應用,不隨騰訊雲web會話斷開而關閉應用:

nohup python3 manage.py runserver 0.0.0.0:8000&

對於后台運行的進程最好自定義進程名,省的找不到,可以在manage.py文件中加上進程名定義:

try:
    import setproctitle
    setproctitle.setproctitle("xxxx")
except:
    pass

然后就可以通過命令過濾出對應的后台進程了:

ps -A | grep "xxxx"

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM