JupyterHub简单使用

目录

Jupyter Notebook 已成为数据分析的通用工具之一,在气象领域也有广泛的应用。

之前我一直使用 Pycharm 调试 Python 程序,但今年开始使用 Jupyter Notebook 后,发现在数据探索和可视化等方面还是 Jupyter Notebook 更方便,也更轻量级。

Jupyter Notebook 仅运行在单个用户账户下。如果想要向不同用户提供环境一致但相互独立的 Jupyter Notebook,可以使用 JupyterHub 工具。

本文介绍 JupyterHub 的简单使用方法。

快速开始

使用 conda 安装:

conda install -c conda-forge jupyterhub
conda install notebook

在某个目录下启动 Hub 服务器

jupyterhub

浏览器访问 https://localhost:8000 ,使用系统密码登录。

想要支持多个用户登录,必须使用管理员账户启动 jupyterhub

sudo jupyterhub

上述启动的仅仅是一个简单的服务,最好使用配置文件设置一些参数。

配置

使用 jupyterhub 生成默认的配置文件 jupyterhub_config.py

jupyterhub --generate-config

默认的配置文件 jupyterhub_config.py 中配置项都包含在注释中,例如

## Duration (in seconds) to determine the number of active users.
#c.JupyterHub.active_user_window = 1800

指定配置文件启动 Hub 服务

jupyterhub -f /path/to/jupyterhub_config.py

修改设置

下面修改一些设置

修改绑定的 URL

c.JupyterHub.bind_url = 'http://127.0.0.1:9500'

设置 Jupyter Notebook 启动的目录

c.Spawner.notebook_dir = '~/notebook'

默认启动 JupyterLab

c.Spawner.default_url = '/lab'

配置管理员账户,可以访问管理界面 /hub/admin

c.Authenticator.admin_users = ("wangdp", )

局限

默认配置下,JupyterHub 使用系统账户验证,必须使用管理员账户启动才能让所有用户访问。 但很多时候无法为每个用户都配置用户账户,也不一定能获取到管理员账户权限。 所以我还需要进一步研究 JupyterHub 的功能。

参考

https://jupyterhub.readthedocs.io/en/stable/quickstart.html

https://jupyterhub.readthedocs.io/en/stable/getting-started/config-basics.html