Linux 虚拟环境
为什么安装虚拟环境:
因为linux系统是大家共同在用的,每个人,甚至同一个人的不同项目所用的tf、keras等版本不一样,自己的改动可能会影响别人使用服务器,所以,需要根据自己的需求来配置不同的虚拟环境,安装不同的python包、tf框架等,避免因为某次修改改动公共环境.
1、先安装设置虚拟环境所需要的包:virtualenvwrapper
python3 -m pip install virtualenvwrapper -i https://pypi.tuna.tsinghua.edu.cn/simple
-i + 后面的网址是选择清华镜像,这样安装的快一点
2、设置安装的虚拟环境存放地址
mkdir /home/houls/.envs
# houls是我在服务器上的账户,所以.envs就是我账户下的根目录的文件
.envs一般为隐藏文件
ls -a 指令可以显示隐藏文件
3、配置环境变量并运行该文件
先vim ~/.bashrc,进入编辑环境变量文件界面
然后复制一下内容到环境变量文件:
python virtual env stuff
#设置env存放路径
export WORKON_HOME=~/.envs
#设置python版本
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3.8
#设置?
export VIRTUALENVWRAPPER_VIRTUALENV=/home/houls/.local/bin/virtualenv
source /home/houls/.local/bin/virtualenvwrapper.sh
#update path for locally installed python packages
#设置?
export PATH=$PATH:/home/houls/.local/bin
注意:
可以使用cat命令查看该环境变量的内容
cat /home/houls/.bashrc
运行该环境变量文件
source ~/.bashrc
好像每次重新进入服务器的时候都要先执行一下source ~/.bashrc指令,不然可能就没法激活虚拟环境,我目前的情况是这样的
4、创建虚拟环境
mkvirtualenv <name> 比如:mkvirtualenv mimic-test
5 激活 虚拟环境:
命令:workon <name>
name是你给该虚拟环境起的名字,比如我的虚拟环境用于mimic医疗项目,我起的名字是mimic-test
比如:workon mimic-test
6 deactivate 虚拟环境(退出虚拟环境):
命令:deactivate
另外:
在虚拟环境里面可以确认 python 和 pip 都不是系统的,而是虚拟环境的:
which pip
which python
看看虚拟环境安装了啥:
pip freeze
#删除虚拟环境
rmvirtualenv [虚拟环境名称]
Windows 安装虚拟环境
1 下载创建虚拟环境所需要的东西,对应的是win版本
pip install virtualenvwrapper-win -i https://pypi.tuna.tsinghua.edu.cn/simple
2 配置环境变量(该变量指定虚拟环境安装在哪个路径)
以下设定我的虚拟环境安装在了E:\envs
在该路径下看到了我下面安装的虚拟环境normal
3 下载python
python官网下载地址
勾选上add python to path,选择安装存放路径
在命令行cmd输入python,显示python交互界面则安装成功;
4 创建虚拟环境(-p指定哪个python版本,flask-envname为虚拟环境的名字)
E:\envs是我存放所有虚拟环境的文件
E:\Installed\python3.9是我安装的python3.9的位置,该路径后面需要加上python.exe
mkvirtualenv normal -p E:\Installed\python3.9\python.exe
normal是虚拟环境的名字,输入python查看安装的python版本
pip list查看目前环境安装的包
5 使用虚拟环境
每个项目最好有自己的 virtualenv,这样项目用的 packages 可以随便安装随便卸载
退出虚拟环境
deactivate
进入虚拟环境
因为之前在环境变量里面配置了WORKON_HOME,所以可以直接使用workon命令+该路径下的虚拟环境名称,激活虚拟环境
workon normal
退出虚拟环境后可以发现:路径前不再有normal,说明虚拟环境退出成功
2020/10/14日,我使用py3.9无法找到与tensorflow匹配的版本,安装出错,所有只能重新布置一个py3.8.6版本的虚拟环境,安装tf2.3.1