anaconda自带了jupyter,平时调试代码还是很好用的,但是没有多用户,多用户使用和权限管理不方便。JupyterHub是一个多用户Hub,提供了多用户服务,先上官网地址,更多详情配置请看官方介绍。
一、jupyter配置启动
使用jupyterhub是不需要启动jupyter的,不过这里也顺便介绍一下。
1、安装py环境anaconda。
2、生成jupyter配置文件:
jupyter notebook --generate-config
3、设置jupyter密码:
jupyter notebook password
4、启动jupyter
nohup jupyter notebook --ip= --port=8899 > ./ 2>&1 & ##以非root用户启动
nohup jupyter notebook --ip= --port=8899 --allow-root > ./ 2>&1 & ##以root用户启动
二、jupyterhub配置启动
1、安装py环境anaconda。
2、安装jupyterhub: conda install -c conda-forge jupyterhub。pip安装方法参考这里。如果是离线安装,建议使用conda。
3、生成配置文件:在配置文件目录下执行 jupyterhub --generate-config,建议放在 /etc/jupyterhub目录下面
3、启动jupyterhub:jupyterhub -f /etc/jupyterhub/jupyterhub_config.py,默认8000端口,如果8000端口被占用,可修改jupyterhub_config.py文件改为其他端口,也可以通过nohup在后台启动。
4、多用户:在Linux下使用useradd命令添加新用户并设置密码,以新用户名和密码登录jupyterhub即可。
5、网上常用方法是设置 添加白名单,但是jupyterhub对centos添加新用户的命令支持不好,出错,并且它的底层依然是添加linux新用户。另一种方法是在配置文件中自定义 .add_user_cmd 配置,例如:.add_user_cmd = ['adduser', '-m', '-G', 'jupyterhub-users'] ,此时添加白名单方法生效。但是此时还需要先为新用户设置密码,才能登录,所以还是建议在linux终端直接添加新用户。
关于怎么设置jupyterhub自动创建用户和密码,以及ldap认证,请参见第二篇文章。