首先下載 Ubuntu 系統(tǒng)的 virtualenv 依賴:
$ sudo apt install virtualenv
因為 Ubuntu 22 默認的版本剛好是我需要的 Python 3.10 版本, 這里就不安裝其他版本了。
日常使用 virtualenvwrapper 的命令:
- 創(chuàng)建新的虛擬環(huán)境
$ mkvirtualenv -p Python版本號 虛擬環(huán)境名稱 - 查看已創(chuàng)建的虛擬環(huán)境
$ lsvirtualenv - 進入指定的虛擬環(huán)境
$ workon 虛擬環(huán)境名稱 - 退出當前虛擬環(huán)境
$ deactivate - 刪除指定的虛擬環(huán)境
$ rmvirtualenv 虛擬環(huán)境名稱
安裝 virtualenvwrapper
通過 pip 安裝 virtualenv 和 virtualenvwrapper 庫:
$ pip install virtualenv
$ pip install virtualenvwrapper
在 用戶根目錄(cd ~) 下創(chuàng)建 .virtualenvs 文件夾:
$ cd ~
$ pwd
/home/ubuntu
mkdir .virtualenvs
這個文件夾是用來保存用戶創(chuàng)建的所有 Python 虛擬環(huán)境的。
查看 virtualenvwrapper.sh 所在的目錄, 用于接下來設置打開終端自動啟用 virtualenvwrapper 命令:
$ sudo find / -name virtualenvwrapper.sh
/home/ubuntu/.local/bin/virtualenvwrapper.sh
修改當前用戶的 .bashrc 配置文件:
$ vim ~/.bashrc
并在 .bashrc 配置文件的最后添加兩行配置:
# 設置 virtualenvwrapper 虛擬環(huán)境保存的目錄
export WORKON_HOME=/home/ubuntu/.virtualenvs
# 設置 virtualenvwrapper 默認的 python 版本
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
# 打開終端自動啟用 virtualenvwrapper 命令
source /home/ubuntu/.local/bin/virtualenvwrapper.sh
最后將上面的修改立即生效:
$ source ~/.bashrc
使用 virtualenvwrapper
使用系統(tǒng)環(huán)境中的 Python 3.10 來創(chuàng)建新建一個虛擬的 test_venv 環(huán)境:
$ mkvirtualenv -p python3.10 test_venv
created virtual environment CPython3.10.12.final.0-64 in 187ms
creator CPython3Posix(dest=/home/ubuntu/.virtualenvs/test_venv, clear=False, no_vcs_ignore=False, global=False)
seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/home/ubuntu/.local/share/virtualenv)
added seed packages: pip==23.2.1, setuptools==68.2.0, wheel==0.41.2
activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/test_venv/bin/predeactivate
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/test_venv/bin/postdeactivate
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/test_venv/bin/preactivate
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/test_venv/bin/postactivate
virtualenvwrapper.user_scripts creating /home/ubuntu/.virtualenvs/test_venv/bin/get_env_details
創(chuàng)建成功后會自動進入 test_venv 環(huán)境, 先使用 deactivate 命令退出當前虛擬環(huán)境:
(test_venv) ubuntu@VM-4-14-ubuntu:~$ deactivate
ubuntu@VM-4-14-ubuntu:~$
然后再執(zhí)行 lsvirtualenv 指令查看目前已經(jīng)創(chuàng)建的所有 Python 虛擬環(huán)境:
$ lsvirtualenv
test_venv
=========
之后就可以在任意目錄下激活虛擬環(huán)境 test_venv 進行開發(fā)調試:
ubuntu@VM-4-14-ubuntu:~/code$ workon test_venv
(test_venv) ubuntu@VM-4-14-ubuntu:~/code$
在 VS Code 中使用
進入工作環(huán)境設置文件 settings.json 并加入以下配置:
"python.venvPath": "/home/ubuntu/.virtualenvs"
然后重啟 VS Code 就可以看到已經(jīng)配置成功并被識別, 可以選擇所有已經(jīng)創(chuàng)建的 Python 虛擬環(huán)境。