使用公有云快速搭建jupyter实验环境

Posted Elwood Ying

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用公有云快速搭建jupyter实验环境相关的知识,希望对你有一定的参考价值。

安装npm和nodejs

apt install npm nodejs
npm install -g n
n stable
pip install jupyterhub
sudo npm install -g configurable-http-proxy 
pip install notebook
pip install jupyterhub-dummyauthenticator

测试是否安装成功

jupyterhub -h
configurable-http-proxy -h

安装jupyterlab

pip install jupyterlab

配置Jupyterhub

生成配置文件

mkdir -p /etc/jupyterhub
cd /etc/jupyterhub
jupyterhub --generate-config
nano jupyterhub_config.py

nano打开之后,在文件开头加入如下内容

###jupyterhub_config.py
# 新增配置属性,建议直接加在文件开头就好
## 启用JupyterLab
c.Spawner.default_url = '/lab'
## 所有IP都可以访问
c.JupyterHub.ip = '*'
c.JupyterHub.port = 8888
c.Spawner.ip = '127.0.0.1'
c.PAMAuthenticator.encoding = 'utf8'
## 指定可以访问的Ubuntu用户
c.Authenticator.whitelist = 'root','user1','user2'
c.LocalAuthenticator.create_system_users = True
## 指定管理员用户
c.Authenticator.admin_users = 'root'
c.JupyterHub.authenticator_class = 'dummyauthenticator.DummyAuthenticator'
c.JupyterHub.statsd_prefix = 'jupyterhub'

保存并退出

搜索spawn.py并在get_args处新增如下一行

(base) root@iZj6c49ru1twji7lz73oe1Z:/etc/jupyterhub# find / -name spawner.py
/root/anaconda3/lib/python3.7/site-packages/jupyterhub/spawner.py
 def get_args(self):
        """Return the arguments to be passed after self.cmd

        Doesn't expect shell expansion to happen.
        """
        args = []
        args.append('--allow-root')
        if self.ip:
            args.append('--ip=%s' % _quote_safe(self.ip))

启动jupyter

jupyterhub --config=/etc/jupyterhub/jupyterhub_config.py --no-ssl

在本地机器开启转发

ssh -N -f -L localhost:9999:localhost:8888 -p 22 xxx@ip

然后在本地9999端口即可正常使用

nohup jupyter notebook &

以上是关于使用公有云快速搭建jupyter实验环境的主要内容,如果未能解决你的问题,请参考以下文章

“云中论道”之——使用开源技术和Azure公有云服务快速搭建云端IoT解决方案(上)

“云中论道”之——使用开源技术和Azure公有云服务快速搭建云端IoT解决方案(下)

鲲鹏云实验-Python+Jupyter机器学习基础环境

如何在Oracle公有云上建立IaaS私有镜像

使用vagrant快速搭建linux实验环境

基于公有云的准生产环境的搭建