介紹
換工作盗扒,換電腦一切需要重新開始,開發(fā)環(huán)境搭建真是個大工程缀去。本文主要記錄下侣灶,python開發(fā)環(huán)境的搭建及優(yōu)化,輕松保持開發(fā)的快捷和高效缕碎。
選擇開發(fā)電腦
有條件的話Mac還是開發(fā)的首選褥影,用習慣之后,要再換系統(tǒng)還真是難以割舍咏雌。第二推薦的原本是linux系統(tǒng)凡怎,它能讓你在開發(fā)過程中能最接近生產(chǎn)環(huán)境,但痛點也還是比較明顯赊抖,一些常用的通訊軟件统倒,流行的管理軟件沒有被支持,當然如果你是linux大神氛雪,這些都不是問題房匆。所有第二推薦的便是windows10了,安全性是windows一直以來的毛病报亩,但發(fā)展到現(xiàn)在坛缕,相較以前已經(jīng)很不錯了,再加上wsl的引入捆昏,讓windows系統(tǒng)變得更加強大,而且有多年以來孕育的強大軟件生態(tài)毙沾,相信以后會越走越好骗卜。
搭建及優(yōu)化
通過pyenv進行python部署
這里不再推薦使用系統(tǒng)自帶的python版本進行服務(wù)部署,通過虛擬環(huán)境的部署可以實現(xiàn)運行環(huán)境的完全隔離左胞,防止項目之間依賴沖突寇仓,造成運行環(huán)境的破壞。這里之所以推薦使用pyenv烤宙,是因為它基本上不依賴系統(tǒng)python版本遍烦,而且安裝方便易于管理。而在Windows系統(tǒng)下躺枕,沒有得到支持服猪,所以這個推薦使用Windows進行開發(fā)的童鞋將開發(fā)環(huán)境放在wsl中供填,開發(fā)工具可以用vscode,vscode提供了remote development
的插件罢猪,能讓你輕松的進行開發(fā)工作近她。
pyenv
部署可以參考 https://www.antio.top/blog/2018/11/7/pythonxu-ni-huan-jing-guan-li-ruan-jian-pyenvan-zhuang-bu-shu/
python鏡像加速
采用阿里鏡像加速服務(wù)(對于新更新的版本可能找不到,依賴于阿里同步官方庫的時間)
# vi ~/.pip/pip.conf
[global]
trusted-host = mirrors.aliyun.com
index-url = https://mirrors.aliyun.com/pypi/simple
善用requirements.txt
在完成一個項目的開發(fā)后膳帕,建議創(chuàng)建一個干凈的虛擬環(huán)境粘捎,并確保程序正常跑起來,讓后通過如下命令危彩,生成requirements.txt文件攒磨,并提交到代碼庫中,且盡量將第三發(fā)包版本都指定汤徽,避免因第三方包升級娩缰,導致項目無法正常運行。有requirements.txt的加持泻骤,能大大減小項目出問題的幾率漆羔。
pip freeze > requirements.txt
生產(chǎn)環(huán)境
在生產(chǎn)環(huán)境下部署有下面幾個參考方案
直接部署在生產(chǎn)主機上,可通過Jenkins等持續(xù)集成服務(wù)進行自動化部署
還是建議使用pyenv創(chuàng)建虛擬環(huán)境進行部署
通過docker打包鏡像狱掂,可通過Jenkins等持續(xù)集成服務(wù)進行自動化部署
這種方式部署的話演痒,就不需要考慮pyenv的安裝了,直接在鏡像打包的時候指定python版本就可以了