linux下虛擬環境模塊virtualenv及管理工具virtualenvwrapper的使用


關於虛擬環境的重要性這里就不多說了,這篇文章介紹一下linux中virtualenv以及virtualenvwrapper的使用。

virtualenv的安裝與使用

使用前提示:注意,你的PATH變量,編譯安裝的python3一定要放在最前面!

使用步驟如下:

# 1.下載虛擬環境工具(這里是在物理環境下安裝的)
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenv

# 2.使用命令,創建虛擬環境,分別運行一個django1和django2
# 進入一個統一管理的目錄,管理虛擬環境例如/opt/allenv
# 創建一個統一的虛擬環境目錄,便於管理
mkdir  /opt/allenv
# 進入這個目錄
cd /opt/allenv 

#3.創建python3 的虛擬環境——venv1是虛擬環境的名字
virtualenv --no-site-packages --python=python3  venv1
'''
#參數解釋        
--no-site-packages  不要任何的第三方包
--python 是指定一個解釋器 我們選的是python3 # 前提是將python3的路徑加在了環境變量了,也可以直接把python解釋器的絕對路徑加在這里
venv1是虛擬環境文件夾的名字,自定義
'''
 #4.進入虛擬環境目錄,激活虛擬環境
#source是linux的讀取命令,讀取一個腳本文件,激活虛擬環境
source /opt/allenv/venv1/bin/activate

#5.虛擬環境使用原理是,修改了PATH變量,根據pATH的優先級,使用解釋器 #6.激活虛擬環境,在venv1下創建django2項目
注意~創建好虛擬環境后~我們就可以在這一片區域用pip安裝這個環境需要的模塊與包了

#7.再開一個窗口,創建venv2,用於創建django1的項目 #8.退出虛擬環境的命令 deactivate 

這里我用Xshell開了兩個窗口,分別在兩個虛擬環境中運行django1與django2的項目(請不要吐槽runserver  - -!)

~~另外,部署項目前記得關一下防火牆~

環境變量的變化

virtualenvwrapper的安裝與使用

  virtualenv 的一個最大的缺點就是:
每次開啟虛擬環境之前要去虛擬環境所在目錄下的bin目錄下source一下activate,這就需要我們記住每個虛擬環境所在的目錄。

  但是實際中~再聰明的你也有可能你忘記了虛擬環境放在哪 0.0!

  一種可行的解決方案是,將所有的虛擬環境目錄全都集中起來,例如/opt/all_venv/,並且針對不同的目錄做不同的事。
使用virtualenvwrapper管理你的虛擬環境(virtualenv),其實他就是統一管理虛擬環境的目錄,並且省去了source的步驟。

安裝virtualenvwrapper

pip3 install virtualenvwrapper

設置Linux的環境變量,每次啟動就加載virtualenvwrapper

#系統變量配置文件是 /etc/profile~~這里我們配置在個人用戶中  
#個人用戶變量配置文件,在用戶家目錄下找到這個~/.bash_profile文件,寫入如下配置
#打開文件,往里面寫入變量
vim  ~/.bash_profile   

#設置virtualenv的統一管理目錄
export WORKON_HOME=~/Envs  
#添加virtualenvwrapper的參數,生成干凈隔絕的環境
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'   

## 特別注意下面這兩個目錄是自己安裝的python3 的目錄~~這里默認指定的是py3的環境~如果想生成py2的虛擬環境需要用virtualenv單獨配置了 #指定python解釋器
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3    
#執行virtualenvwrapper安裝腳本
source /usr/local/bin/virtualenvwrapper.sh 

最后記得執行source命令讓配置生效:

source ~/.bash_profile 

基本使用virtualenvwrapper

#創建一個虛擬環境:
mkvirtualenv my_django115
這會在 ~/Envs 中創建 my_django115 文件夾。

#在虛擬環境上工作:激活虛擬環境my_django115
workon my_django115


#再創建一個新的虛擬環境
mkvirtualenv my_django2

virtualenvwrapper 提供環境名字的tab補全功能。
當有很多環境, 並且很難記住它們的名字時,這就顯得很有用。

#workon還可以任意停止你當前的環境,可以在多個虛擬環境中來回切換
workon django1.15
workon django2.0

#也可以手動停止虛擬環境
deactivate

#刪除虛擬環境,需要先退出虛擬環境
rmvirtualenv my_django115

常用其他命令

lsvirtualenv
列舉所有的環境。
cdvirtualenv
導航到當前激活的虛擬環境的目錄中,比如說這樣您就能夠瀏覽它的 site-packages 。
cdsitepackages
和上面的類似,但是是直接進入到 site-packages 目錄中。
lssitepackages
顯示 site-packages 目錄中的內容。

完整官網介紹:https://virtualenvwrapper.readthedocs.io/en/latest/command_ref.html

~~

 


免責聲明!

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



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