一、為什么不直接在服務(wù)器部署python3
因?yàn)閏entos6.5系統(tǒng)自帶python2.6,如果直接安裝python3,會(huì)造成有些自帶的腳本無(wú)法運(yùn)行,比如yum,所以為避免這種情況的發(fā)生,可以先安裝anaconda2,通過(guò)建立python3的虛擬環(huán)境,來(lái)解決這一問(wèn)題
二、服務(wù)器安裝anaconda2的方法
1、首先安裝bzip2(如果已安裝請(qǐng)忽略,如何安裝可鍵入bunzip2自查)
2、下載對(duì)應(yīng)版本的anaconda軟件包(根據(jù)自己系統(tǒng)來(lái)定)
三、建立虛擬環(huán)境
1、建立和啟動(dòng)虛擬環(huán)境
conda create -n XXX python=3.5
安裝成功后就可以在你所安裝的anaconda2目錄下的envs下看到啦
source activate XXX
啟動(dòng)你創(chuàng)建的虛擬環(huán)境
2、未聯(lián)網(wǎng)情況下的服務(wù)器如何快速創(chuàng)建虛擬環(huán)境

在一臺(tái)聯(lián)網(wǎng)的服務(wù)器上新建一虛擬環(huán)境,在上面將你所需要的所有包安裝好,然后打包丟到未聯(lián)網(wǎng)的服務(wù)器的envs路徑下,就完成啦~
3、聯(lián)網(wǎng)情況下如何快速安裝所有包和依賴(lài)包
首先,先啟動(dòng)已經(jīng)能夠順利使用的虛擬環(huán)境,然后運(yùn)行pip freeze >requirements.txt,這時(shí)候,在當(dāng)前目錄就已經(jīng)生成一個(gè)名為requirements.txt的文件,里面就含有此環(huán)境下所安裝的所有的包。

然后如果另外一臺(tái)(你即將安裝)服務(wù)器是聯(lián)網(wǎng)的,那么直接將該文件傳上去,直接pip install -r requirements.txt就可以啦。如果未聯(lián)網(wǎng),要么就是安裝上面2的方法,要么就一個(gè)一個(gè)把包下載下來(lái)去安裝,都是可以的。
四、如果將用python3代碼編輯好的文件,在服務(wù)器上自動(dòng)調(diào)度
因?yàn)樽詣?dòng)調(diào)度的時(shí)候,如果沒(méi)有特殊指定,肯定是會(huì)啟動(dòng)python2而不是python3來(lái)跑文件,自然會(huì)報(bào)錯(cuò),我目前知道的有兩個(gè)方法可以解決這個(gè)問(wèn)題。
1、指定解析器及解析器所在位置
我們創(chuàng)建python文件的時(shí)候,一般/可能會(huì)出現(xiàn)這么兩行代碼,那么第一行就是我們要改的地方。

將第一行的解析位置設(shè)定為虛擬環(huán)境中python的所在位置,如下,便是:
#! /root/anaconda2/envs/lib_bak/bin/python

這樣就好啦
2、運(yùn)行時(shí)指定python位置
我們?cè)诜?wù)器運(yùn)行python腳本時(shí),一般為:python XXX.py
這時(shí)候是自動(dòng)啟動(dòng)python自帶python的,所以我們同樣可以用上面1步驟說(shuō)到的改變路徑來(lái)完成,直接/root/anaconda2/envs/lib_bak/bin/python XXX.py就可以啦。
3、注意
一般最好將上述文檔寫(xiě)成sh文件再自動(dòng)調(diào)度,不然會(huì)出現(xiàn)莫名其妙的報(bào)錯(cuò)。