目录

1. 先了解IPython和IPyKernel简介

2. 项目安装虚拟环境

3. 激活/进入虚拟环境

4. 打开JupyterLab

5. 切换内核使用虚拟环境

6. 更改JupyterLab默认工作路径

7.使用anaconda安装的jupyter工具修改默认工作路径

7.1 如果使用anaconda安装后的工具包

7.2 默认虚拟环境base中执行jupyter lab --generate-config

7.3 打开该快捷方式 %USERPROFILE% 

8. 多个虚拟环境如何使用jupyter lab

第一步:在每个A,B,C虚拟环境中都安装ipykernel 内核

第二步:在A虚拟环境中,安装jupyterlab

第三步:在B,C虚拟环境中,注册内核

第四步:在A环境中启动jupyter

第五步:让jupyter外网密码访问,打开指定文件夹 配置

(1)配置访问加密码

(2)配置配置文件

(3)启动访问


1. 先了解IPython和IPyKernel简介

IPython 是一个功能强大的交互式 Python 解释器和开发环境。它提供了一种增强的 Python Shell,使得用户能够以交互的方式探索、分析和可视化数据。IPython 的名称来源于 "Interactive Python",体现了其交互式的特性。

IPyKernel 是 IPython 的核心组件之一,提供了 IPython 的内核实现,使得 IPython 能够与各种前端界面进行通信和交互。IPyKernel 独立于 IPython 的交互式 Shell,可以作为一个独立的服务运行,接收来自前端的请求,执行代码,并将结果返回给前端

IPyKernel 使得 IPython 能够与 ​ Jupyter Notebook、JupyterLab ​ 等前端界面无缝集成,实现了代码的交互式运行和结果显示。

参考文章

https://zhuanlan.zhihu.com/p/696802636https://zhuanlan.zhihu.com/p/696802636

2. 项目安装虚拟环境

参考文章 

(2)python之虚拟环境管理工具venv和anaconda-CSDN博客文章浏览阅读480次,点赞20次,收藏9次。创建python虚拟环境 和 创建python项目目录文件代码,本身是相互不干扰的,独立的。但是由于我们用开发工具开发python项目的时候,要指定用那个python虚拟环境。故而,我们通常会把venv创建的虚拟环境位置放到项目目录下,这样便于操作。假设我们有一个项目目录结构如下├── venv/ # ✅ 虚拟环境目录(存放 Python 依赖,不包含在版本版本控制中,如git)├── app.py # 项目主文件├── requirements.txt # 依赖文件。 https://blog.csdn.net/yilvqingtai/article/details/147616817

3. 激活/进入虚拟环境

如果我们在上一步骤中创建了虚拟环境名称 env

那么首先进入到这个虚拟环境中

然后运行

python -m ipykernel install --user --name=xxx --display-name "xxx自定义展示名称"

这里的--name--display-name可以自定义,以便在Jupyter界面中更容易识别 

4. 打开JupyterLab

假如你已经安装好JupyterLab了,命令行启动:

jupyter-lab

5. 切换内核使用虚拟环境

此时在浏览器中我们可以看到:

如何使用:

6. 更改JupyterLab默认工作路径

如果不更改,打开JupyterLab后,默认C盘下的(window系统) 目录结构

我们可以修改默认打开目录

在控制台(或terminal)中输入命令:

jupyter lab --generate-config

会在默认路径下生成一个jupyter_notebook_config.py文件。打开它,找到c.ServerApp.notebook_dir(旧版:c.NotebookApp.notebook_dir)这一行,输入你要指定的工作目录,并把前面的“#”去掉,保存即可,下次打开JupyterLab时就会是指定的工作目录了。 

7.使用anaconda安装的jupyter工具修改默认工作路径

7.1 如果使用anaconda安装后的工具包

会默认安装一个jupyter notebook的工具

7.2 默认虚拟环境base中执行jupyter lab --generate-config

 jupyter默认安装在默认虚拟环境中base, 执行 jupyter lab --generate-config  会生成对应的配置文件(此处我已经已生成,所以会 问我是否再次生成,覆盖之前的配置文件)

同理修改下对应配置目录

7.3 打开该快捷方式 %USERPROFILE% 

 删除%USERPROFILE%  ,应用。即可进入对应的工作目录

8. 多个虚拟环境如何使用jupyter lab

如果我们用conda创建了 A,B,C三个虚拟环境。在A虚拟环境中,安装了jupyter lab,那么我们就只能在A环境中去启动jupyter lab,如何使用B,C虚拟环境。

第一步:在每个A,B,C虚拟环境中都安装ipykernel 内核

conda activate A
conda install ipykernel -y
conda activate B
conda install ipykernel -y
conda activate C
conda install ipykernel -y

 

第二步:在A虚拟环境中,安装jupyterlab

用pip安装

pip install jupyterlab

或者用conda安装

conda install -c conda-forge jupyterlab

 当然你也可以在第一步的A虚拟环境中,同时安装jupyter和ipykernel 

pip install ipykernel jupyter

第三步:在B,C虚拟环境中,注册内核

# 将环境 B 注册为 Jupyter 内核(名称可自定义)
python -m ipykernel install --user --name B --display-name "环境B内核"

 

# 将环境 C 注册为 Jupyter 内核(名称可自定义)
python -m ipykernel install --user --name C --display-name "环境C内核"

第四步:在A环境中启动jupyter

# 激活环境 A
conda activate A

# 启动 Jupyter Lab(使用环境 A 的安装)
jupyter lab

启动成功后,可以在界面上切换对应的内核

第五步:让jupyter外网密码访问,打开指定文件夹 配置

(1)配置访问加密码

安全起见,对连接时的密码进行加密处理,否则明文写在配置文件中,容易造成数据安全风险,依次执行如下操作:
 

# 进入到A的虚拟环境中
conda  activate A

# 执行python命令
python

#  输入如下
 from jupyter_server.auth import passwd
    passwd()

设置访问密码:  如 123456

(2)配置配置文件

完成密码加密后,执行如下命令生成Jupyter Lab 的配置文件(jupyter_lab_config.py):

    jupyter lab --generate-config

此时会在你当前的用户(如root)目录下.jupyter的文件夹中生成jupyter_lab_config.py配置文件

c.NotebookApp.ip = '0.0.0.0'
c.NotebookApp.open_browser = False
c.NotebookApp.port = 18888  # 可以指定一个端口,或者使用默认的8888端口
c.NotebookApp.allow_remote_access = True  # 如果你的jupyter版本支持这个选项
c.NotebookApp.allow_origin = '*'  # 允许所有来源的请求,这可能带来安全风险,谨慎使用
c.ServerApp.password = 'argon2:$argon2id$v=19$m=10240,t=10,p=8$nRYesIluHA8CPUncL7iTpw$y/48g/Bf5yOaVVprqJduPpL4YZ1tx2uBWiy6hWEpLRI'
c.ServerApp.notebook_dir='/root' # 配置工作目录

(3)启动访问

后台启动,不因关闭命令行,导致程序退出

全部配置完成后,在服务器端启动Jupyter Lab服务,通过如下命令后台启动,同时输出启动日志到当前目录下:

nohup jupyter lab --allow-root > jupyterlab.log 2>&1 &

访问效果如下
                                                                                          :

 

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐