在 WSL 中使用 Jupyter Notebook

Using Jupyter Notebook in Windows Subsystem for Linux

Posted by J Leaves on June 14, 2020

创建 WSL

(参见 少数派文章 前半部分)

1. 打开 WSL 功能,从微软商店下载 Ubuntu,设置好用户名和密码。

2. 更换软件源

在当前命令行下面输入:

1
sudo -i

提权后输入密码,使用 root 权限登录。然后接下来备份当前源,输入以下命令:

1
cp /etc/apt/sources.list /etc/apt/sources.list.old

不难看出管理源的文件就是 sources.list,我们选择编辑它,编辑器我这里选用的是 vim,所以命令是:

1
vim /etc/apt/sources.list

使用 vim 后会进入命令模式,敲键盘上的 「i」键键入编辑模式,将 http://archive.ubuntu.com/ 全部替换为 https://mirrors.aliyun.com/

完成之后再敲键盘上的「esc」退出编辑模式,然后再输入:wq点击保存并退出编辑器 vim。

3. 更新所有包

1
sudo apt update && upgrade

安装 conda

Miniconda

官网下载 Miniconda,名字应该类似 Miniconda3-latest-Linux-x86_64.sh,然后

1
bash Miniconda3-latest-Linux-x86_64.sh

根据提示完成安装。

安装完成后

1
2
conda activate base
conda install nb_conda_kernels

等待 Jupyter 相关组件完成安装。

若要方便地启动,用 vim 等编辑 ~/.bashrc,在 esac 下面一行插入

1
alias jupyter-notebook="~/miniconda3/bin/jupyter-notebook --no-browser"

之后每次可以用 jupyter-notebook 直接运行 Jupyter 了。

conda 虚拟环境

如何备份 & 迁移 conda 虚拟环境,见 此篇博客

如何创建全新 conda 虚拟环境 & 在一个 Jupyter Notebbook 中调用所有虚拟环境,见 此篇博客

在 conda 环境中使用 pip

pip 切换国内源

1
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

注意不同虚拟环境下的 pip 公用配置文件 ~/.config/pip/pip.conf,但安装的包只在本环境下有效。

每次启动

每次启动时,Jupyter 会以当前目录为根目录。

所以,需要确保当前路径不在 /mnt/ 路径下,(这个是映射的 Windows 文件系统,在这里运行会报错)。

首先激活 conda 环境

1
conda activate base

输入

1
jupyter-notebook

复制出现的网址到 Windows 中的任一浏览器,就可以了。

若不想每次都注意路径,则需要指定 Jupyter 的启动路径

输入

1
jupyter notebook --generate-config

编辑 ~/.jupyter/jupyter_notebook_config.py,找到

#c.NotebookApp.notebook_dir = ‘’

修改为你要的路径

c.NotebookApp.notebook_dir = ‘/path/to/directory’

即可。