Python部署虛擬環境的利器——Virtualenv


virtualenv is a tool to create isolated Python environments.

virtualenv 是創建獨立Python開發環境的工具,用於解決同一台機器上不同的Python工程的依賴、版本以及間接權限等問題。比如項目foo1依賴Django1.3,而項目foo2依賴Django1.7,而當前全局開發環境為Django1.8,版本的不同會導致項目所需包的版本不兼容等問題,使項目無法正常運行,使用virtualenv來創建相對獨立的虛擬環境,可以很好的解決此類問題。此外,值得一提的是,對於項目打包遷移,如部署Web應用項目等應用場景,virtualenv都很有用武之地。

virtualenv創建一個擁有自己安裝目錄的環境, 這個環境不與其他虛擬環境共享庫, 能夠方便的管理python版本和管理python庫。

下面介紹一下與使用Virtualenv相關的技巧。

 

1.安裝Virtualenv

$ pip install virtualenv
//或者由於權限問題使用sudo臨時提升權限
$ sudo pip install virtualenv

2.virtualenv創建虛擬環境

1 virtualenv ENV    
2 #創建一個名為ENV的目錄,並安裝了ENV/bin/python
3 #創建了lib,include,bin目錄,安裝了pip

lib目錄 : 所有安裝的python庫都會放在這個目錄中的lib/pythonX.X/site-packages/中 ;

bin目錄 : bin/python是當前虛擬環境使用的python解析器 ;

如果在命令行中運行virtualenv --system-site-packages ENV, 會繼承/usr/lib/python3.6/site-packages下的所有庫, 最新版本virtualenv把把訪問全局site-packages作為默認行為
default behavior.

3.激活virtualenv

1 #ENV目錄下使用如下命令
2 source ./bin/activate  #激活當前virtualenv
3 #當用戶名前面出現小括號括起來的虛擬環境名時,表明虛擬環境被成功激活

使用“pip list”指令可查看當前庫

4.關閉virtualenv

deactivate

5.指定python版本

可使用-p PYTHON_EXE選項在創建虛擬環境的時候指定Python版本

1 #創建python2.7虛擬環境
2 virtualenv -p /usr/bin/python2.7 ENV2.7
3 
4 #創建python3.4虛擬環境
5 virtualenv -p /usr/local/bin/python3.4 ENV3.4

這樣可以解決不同項目python版本沖突以及和python庫版本不兼容等問題。

6.生成可打包環境

某些特殊需求下,可能沒有網絡,我們希望直接打包一個ENV,解壓后直接使用,這時候可以使用virtualenv --relocatable指令將ENV修改為可更改位置的ENV

#對當前已經創建的虛擬環境更改為可遷移
virtualenv --relocatable ./

7.獲得幫助

virtualenv -h

8.官方文檔

http://virtualenv.readthedocs.org/en/latest/virtualenv.html


免責聲明!

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



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