Virtualenv用于為Python應(yīng)用程序創(chuàng)建隔離的環(huán)境。 它為應(yīng)用程序即系統(tǒng)環(huán)境提供了單獨的環(huán)境。 本教程將幫助您在Ubuntu 20.0、19.10、18.04和16.04 LTS系統(tǒng)上創(chuàng)建Python虛擬環(huán)境。
開始之前
本教程已在Ubuntu 18.04.4 Linux上進行了測試。 另外,我已經(jīng)在該系統(tǒng)上安裝了Python 3.8。
第一步:安裝Virtualenv模塊
首先,您需要在系統(tǒng)上安裝Virtualenv Python模塊。 使用pip3安裝virtualenv Python模塊。 這還將在系統(tǒng)上安裝其他必需的模塊。
[linuxidc@linux:~/www.linuxidc.com]$ pip3 install virtualenv
第二步:創(chuàng)建虛擬環(huán)境
安裝完成后。 讓我們?yōu)槟膽?yīng)用程序創(chuàng)建一個隔離的Python環(huán)境。
找到為您的應(yīng)用程序運行所需的Python二進制位置。 在本教程中,我們使用最近安裝的Python 3.8。 使用哪個命令檢查Python 3二進制文件的位置。
[linuxidc@linux:~/www.linuxidc.com]$ which python3.8
/usr/bin/python3.8
您可以根據(jù)應(yīng)用程序要求選擇其他任何Python版本。
現(xiàn)在,為您的應(yīng)用程序創(chuàng)建一個單獨的環(huán)境。 您可以根據(jù)自己的選擇更改環(huán)境目錄名稱(在下面的示例中使用linuxidc)。 您也可以在其他位置定義環(huán)境目錄。
[linuxidc@linux:~/www.linuxidc.com]$ cd /home/linuxidc/www.linuxidc.com/MyApp
然后使用以下命令創(chuàng)建Python隔離環(huán)境:
[linuxidc@linux:~/www.linuxidc.com]$ virtualenv -p /usr/bin/python3.8 linuxidc
輸出:
created virtual environment CPython3.8.0.final.0-64 in 830ms
creator CPython3Posix(dest=/home/linuxidc/www.linuxidc.com/MyApp/linuxidc, clear=False, global=False)
seeder FromAppData(download=False, pip=latest, setuptools=latest, wheel=latest, via=copy, app_data_dir=/home/linuxidc/.local/share/virtualenv/seed-app-data/v1.0.1)
activators BashActivator,CShellActivator,FishActivator,PowerShellActivator,PythonActivator,XonshActivator
此命令創(chuàng)建您的環(huán)境特定于此網(wǎng)站的本地副本。 在該網(wǎng)站上工作時,應(yīng)激活本地環(huán)境,以確保使用的是正確版本的工具和軟件包。
第三步:在虛擬環(huán)境上工作
在Ubuntu系統(tǒng)上創(chuàng)建Python虛擬環(huán)境后。 您需要通過運行以下命令來激活它。
[linuxidc@linux:~/www.linuxidc.com/MyApp]$ source linuxidc/bin/activate
現(xiàn)在,您將看到Python隔離環(huán)境提示。 使用以下命令檢查python二進制位置:
(linuxidc) [linuxidc@linux:~/www.linuxidc.com/MyApp]$ which python
/home/linuxidc/www.linuxidc.com/MyApp/linuxidc/bin/python
現(xiàn)在,您使用pip安裝的所有軟件包都將放置在虛擬環(huán)境項目文件夾中,與全局Python安裝隔離。
(linuxidc) [linuxidc@linux:~/www.linuxidc.com/MyApp]$ python -V
Python 3.8.0
使用pip3安裝模塊。 如果要使用openstack,可以使用“ nose”。 例如:
(linuxidc) [linuxidc@linux:~/www.linuxidc.com/MyApp]$ pip3 install nose -i https://pypi.douban.com/simple/
Looking in indexes: https://pypi.douban.com/simple/
Collecting nose
Downloading https://pypi.doubanio.com/packages/15/d8/dd071918c040f50fa1cf80da16423af51ff8ce4a0f2399b7bf8de45ac3d9/nose-1.3.7-py3-none-any.whl (154 kB)
|████████████████████████████████| 154 kB 1.6 MB/s
Installing collected packages: nose
Successfully installed nose-1.3.7
第四步:停用虛擬環(huán)境
在虛擬環(huán)境中完成工作之后,只需運行“ deactivate”命令即可退出隔離的環(huán)境。 然后,您將使用戶使用默認shell程序。
(linuxidc) [linuxidc@linux:~/www.linuxidc.com/MyApp]$ deactivate
第五步:刪除虛擬環(huán)境
從應(yīng)用程序中刪除Python虛擬環(huán)境。 只需從應(yīng)用程序文件夾中刪除linuxidc目錄。
[linuxidc@linux:~/www.linuxidc.com/MyApp]$ rm -rf linuxidc
更多Python相關(guān)信息見Python 專題頁面 http://www.sfodin.cn/topicnews.aspx?tid=17