Notebook中添加Virtualenv作为IPython Kernel

举报
小聪不是小葱~ 发表于 2021/10/21 09:55:26 2021/10/21
【摘要】 1. 使用场景当前Notebook默认内置的引擎环境不能满足用户诉求,用户可以新建一个conda env按需搭建自己的环境。注:Notebook重启后,非挂载盘目录(/home/ma-user/work)的内容将丢失,请及时保存环境或保存镜像 2. 操作流程本小节以搭建一个“python3.6.5和tensorflow1.2.0”的IPython Kernel为例进行展示。 2.1 创建c...

1. 使用场景

当前Notebook默认内置的引擎环境不能满足用户诉求,用户可以新建一个conda env按需搭建自己的环境。

注:Notebook重启后,非挂载盘目录(/home/ma-user/work)的内容将丢失,请及时保存环境或保存镜像

2. 操作流程

本小节以搭建一个“python3.6.5和tensorflow1.2.0”的IPython Kernel为例进行展示。

2.1 创建conda env

打开Notebook的terminal,执行下述命令。其中,my-env是虚拟环境名称,用户可自定义。详细参数可参考conda官网

conda create --quiet --yes -n my-env python=3.6.5

创建完成后,执行conda info --envs命令查看虚拟环境列表,可以看到my-env虚拟环境:

sh-4.4$conda info --envs
# conda environments:
#
base                  *  /home/ma-user/anaconda3
TensorFlow-2.1           /home/ma-user/anaconda3/envs/TensorFlow-2.1
my-env                   /home/ma-user/anaconda3/envs/my-env
python-3.7.10            /home/ma-user/anaconda3/envs/python-3.7.10                  /opt/conda/envs/my-env

2.2 进入conda env

source /home/ma-user/anaconda3/bin/activate /home/ma-user/anaconda3/envs/my-env

2.3 安装依赖包

my-env虚拟环境安装jupyter【必选】和tensorflow 1.2.0

pip install jupyter
pip install tensorflow==1.2.0

2.4 添加虚拟环境为IPython Kernel

执行下述命令,其中--name值可自定义。

python3 -m ipykernel install --user --name "my-py3-tensorflow-env"

执行完毕后,可以看到下述提示信息。

(my-env) sh-4.4$python3 -m ipykernel install --user --name "my-py3-tensorflow-env"
Installed kernelspec my-py3-tensorflow-env in /home/ma-user/.local/share/jupyter/kernels/my-py3-tensorflow-env

2.5 自定义虚拟环境Kernel的环境变量

执行

cat /home/ma-user/.local/share/jupyter/kernels/my-py3-tensorflow-env/kernel.json

可以看到默认配置如下:

{
 "argv": [
  "/home/ma-user/anaconda3/envs/my-env/bin/python3",
  "-m",
  "ipykernel_launcher",
  "-f",
  "{connection_file}"
 ],
 "display_name": "my-py3-tensorflow-env",
 "language": "python"
}

按需添加env字段的值,可参考下述配置。其中,PATH中增加了该虚拟环境python包所在路径:

{
 "argv": [
  "/home/ma-user/anaconda3/envs/my-env/bin/python3",
  "-m",
  "ipykernel_launcher",
  "-f",
  "{connection_file}"
 ],
 "display_name": "my-py3-tensorflow-env",
 "language": "python",
 "env": {
      "PATH": "/home/ma-user/anaconda3/envs/my-env/bin:/opt/conda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/ma-user/modelarts/ma-cli/bin",
      "http_proxy": "http://proxy-notebook.modelarts-dev-proxy.com:8083",
      "https_proxy": "http://proxy-notebook.modelarts-dev-proxy.com:8083",
      "ftp_proxy": "http://proxy-notebook.modelarts-dev-proxy.com:8083",
      "HTTP_PROXY": "http://proxy-notebook.modelarts-dev-proxy.com:8083",
      "HTTPS_PROXY": "http://proxy-notebook.modelarts-dev-proxy.com:8083",
      "FTP_PROXY": "http://proxy-notebook.modelarts-dev-proxy.com:8083"
 }
}

2.6 进入虚拟环境的IPython Kernel

刷新当前页面,在JupyterLab的Launcher界面可以看到自定义的虚拟环境Kernel。如下所示:
image.png

点击my-py3-tensorflow-env图标,验证是否为当前环境,如下所示:

image.png

2.7 清理环境

在Notebook的terminal里执行下述命令:

2.7.1 删除虚拟环境的IPython Kernel

jupyter kernelspec uninstall my-py3-tensorflow-env

2.7.2 删除虚拟环境

conda env remove -n my-env
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。