今天准备搭建一个JupyterHub服务器,给几个热爱数据分析的朋友用作Python实验平台。于是踩了如下一些坑。我的服务器是腾讯云上一台Ubuntu 16的服务器。我这边只是整理一些坑,具体操作的命令和代码在CSDN和Stack Overflow上面都有很丰富的资料。
1. jupyterhub 与 jupyter notebook:
- jupyter notebook是早期的版本,轻量级,本地运行方便,Python开发或者实验的过程中本地调试经常会使用这种原生的轻量级版本;没有用户管理、用户服务器管理等功能,不能面向多位用户使用。
- jupyterhub是集成了用户管理,服务器管理等功能的新版本,能够支持多人使用,但如果是本地调试,就过重了。
2. jupyterhub安装的坑:
- jupyterhub后端是nodejs,所以至少要安装nodejs,并且node -v 不低于6.0, 可以用以下命令升级:
第一行是安装一个叫n的命令,第二行是用n更新node到最近的stable版本,如果写latest就是更新到最新版。
sudo npm i -g n
sudo n stable
- jupyterhub会用到configurable-http-proxy,这个是nodejs中的一个组件,要用npm安装
- 使用nginx反向代理:若使用nginx反向代理,尽量按照官方文档来配置,链接在文末。
3. PAM Authentication 一直失败,原来是要用root启动jupyterhub,这样才能调用其他user的系统认证。