一、安裝
運行
pip install virtualenv
即可安裝virtualenv,想用 最新開發版 就運行
二、 virtualenv基本使用
$ python virtualenv.py env
在已安裝virtualenv的情況下,可以直接運行 virtualenv env 。
該操作會創建 env/lib/pythonX.X/site-packages 目錄 和 env/bin/python , 前者用來存放要安裝的模塊,后者就是隔離環境的Python解釋器。 在virtualenv環境下使用此解釋器(包括以 #!/path/to/ENV/bin/python 開頭的腳本)時,使用的都是隔離環境下的模塊。
該操作還在隔離環境下安裝了 Setuptools 或 distribute 。要用Distribue取代setuptools的話,只要運行:
$ python virtualenv.py --distribute env
選項:
--version顯示當前版本號。
-h, --help顯示幫助信息。
-v, --verbose顯示詳細信息。
-q, --quiet不顯示詳細信息。
-p PYTHON_EXE, --python=PYTHON_EXE指定所用的python解析器的版本,比如 --python=python2.5 就使用2.5版本的解析器創建新的隔離環境。 默認使用的是當前系統安裝(/usr/bin/python)的python解析器
--clear清空非root用戶的安裝,並重頭開始創建隔離環境。
--no-site-packages令隔離環境不能訪問系統全局的site-packages目錄。
--system-site-packages令隔離環境可以訪問系統全局的site-packages目錄。
--unzip-setuptools安裝時解壓Setuptools或Distribute
--relocatable重定位某個已存在的隔離環境。使用該選項將修正腳本並令所有.pth文件使用相當路徑。
--distribute使用Distribute代替Setuptools,也可設置環境變量VIRTUALENV_DISTRIBUTE達到同樣效要。
--extra-search-dir=SEARCH_DIRS用於查找setuptools/distribute/pip發布包的目錄。可以添加任意數量的–extra-search-dir路徑。
--never-download禁止從網上下載任何數據。此時,如果在本地搜索發布包失敗,virtualenv就會報錯。
--prompt==PROMPT定義隔離環境的命令行前綴。
環境變量和配置文件
三、激活腳本
剛創建的隔離環境下會有一個 bin/activate 命令行腳本。在Windows下,激活腳本要在CMD.exe或Powershell.exe中使用。
$ source bin/activate
注意到命令提示符變了,有個(env)前綴,表示當前環境是一個名為env的Python環境。在env環境下,用pip安裝的包都被安裝到env這個環境下,系統Python環境不受任何影響。也就是說,env環境是專門針對myproject這個應用創建的。
退出當前的venv環境,使用deactivate命令;
四、虛擬環境復制遷移,即將虛擬環境拷貝到其他服務器上 直接使用
Virtualenv ----relocatable env
壓縮生成的env文件夾:
tar -zcvf venv.tar.gz ./env
然后拷貝遷移至其他服務器下進行解壓:
進入./env/bin/下修改activate文件中參數:
VIRTUAL_ENV="/home/env"export VIRTUAL_ENV
將上述VIRTUAL_ENV修改為當前env文件夾正確的路徑,然后執行:
source activate
然后執行:
which python
或者
which pip
查看是否是虛擬env路徑下的工具,如果是的話,則成功。
參考文章:
https://blog.csdn.net/poxiaonie/article/details/78820015
pip的安裝:https://www.cnblogs.com/mangoVic/p/6428369.html
env的安裝:https://www.cnblogs.com/freely/p/8022923.html
