美文网首页
用远程连接JupyterNotebook

用远程连接JupyterNotebook

作者: 锦鲤offer | 来源:发表于2019-11-05 14:15 被阅读0次

前言:

  1. aliyun里的pip大多不好用,尽量用conda。
    (阿里云的pip默认源会导致安装失败,炒鸡无敌爆炸坑,参考
    http://www.liuocean.com/index.php/2019/01/02/a-li-yun-an-zhuangjupyter-notebook-server/
    )
  2. 修改阿里云安全组策略,把入方向的端口8888开放
  3. 使用的端口8888仅限阿里云使用,电脑的8888不可使用否则会出现:
4. Malformed HTTP message from xxxx(电脑ip): Malformed HTTP headers。

本方法使用于远程端口连接。

0. 安装

进入虚拟环境notebook后,安装

conda install jupyter notebookk

能够在多个虚拟环境下切换自如

conda install nb_conda

1. 生成配置文件

jupyter notebook --generate-config

这样就会在用户目录下生成配置文件,之后

ipython
 from notebook.auth import passwd
    passwd()
    Enter password: 
    Verify password: 

返回 'sha1:1295456bce22:83666664331d99621def6ab0857f0e8bc34692d4'

记住'sha1:1295456bce22:835c2e84331d99621def6ab0857f0e8bc34692d4'和输入的密码abc(假设),以后会用到。

把下面的内容放到配置文件里

vi ~/.jupyter/jupyter_notebook_config.py
c.NotebookApp.ip='*'
c.NotebookApp.password = u'sha1:1295456bce22:83666664331d99621def6ab0857f0e8bc34692d4'
c.NotebookApp.open_browser = False
c.NotebookApp.port =8888

进入notebook虚拟环境,并且远程连接。

source activate notebook
jupyter notebook &

假设你的阿里云ip为

aa:bbb:ccc:dd

在本机电脑输入:

http://aa:bbb:ccc:dd:8888/

如果需要输入密码,则输入

abc

配置后发现长久不用,发现忘记密码:

jupyter notebook password
关于安全组事宜

因为从外网访问服务器,需要开放一定的端口,所以要对服务器的访问规则进行配置。阿里云是用安全组来管理这些规则的,所以需要对安全组进行配置。
阿里云为了安全起见,默认只开放了22、80等少数端口。而jupyter notebook默认采用8888端口,因此在安全组配置中,需要将此端口开放。
如果一切都正常,就是无法远程访问,有90%的可能性就是安全组规则配置的问题。
设置过程:云服务器管理控制台 >云服务器ECS>网络和安全>安全组>配置规则>添加安全组规则
具体情况详见:https://www.jianshu.com/p/fff4a61dee7a
作者:默而学
链接:https://www.jianshu.com/p/fff4a61dee7a
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关文章

网友评论

      本文标题:用远程连接JupyterNotebook

      本文链接:https://www.haomeiwen.com/subject/dpisbctx.html