zoukankan      html  css  js  c++  java
  • 通过web远程访问服务器的ipython

    如果想同过一个Web浏览器的方式远程访问服务器上的ipython notebook sever,可通过下面的步骤实现。

    服务器:ubuntu14.04 server

    客户端:windows/unix/linux均可+浏览器

    1. 创建certificate 文件 和 hash密码
      In [1]: from IPython.lib import passwd
      In [2]: passwd()
      Enter password:
      Verify password:
      Out[2]: 'sha1:67c9e60bb8b6:9ffede0825894254b2e042ea597d771089e11aed'
    2. 使用openssl创建一个自签名证书,由于是自签名所以浏览器会提示警告,选择信任exception即可。如果不想引起警告,需具备合格证compliant certificate,可参照tutorial
      $ openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mycert.pem -out mycert.pem

      此处需要注意到的是记住你生成的证书mycert.pem的路径,另外,由于你启用了ssl支持,所以在访问notebook server时需要用https://而非http:// 

    3. 通过ssl使得你通过浏览器发送的密码是加密的,你可以在安全协议模式下使用自签名的认证来启用notebook
      $ ipython notebook --certfile=mycert.pem
    4. 为notebook定制一个配置文件,此配置是基于用户而非全局的。命令执行后会提示生成的文件和位置
      $ ipython profile create nbserver
    5. 修改刚才create nbserver时生成的ipython_notebook_config.py文件
      #,默认情况下ipython_notebook_config.py位于~/.ipython/profile_nbserver/目录下
      
      c = get_config()
      
      # Kernel config
      c.IPKernelApp.pylab = 'inline'  # 使用pyplot绘制功能
      
      # Notebook config
      c.NotebookApp.certfile = u'/absolute/path/to/your/certificate/mycert.pem'
      c.NotebookApp.ip = '*'
      c.NotebookApp.open_browser = False
      c.NotebookApp.password = u'sha1:bcd259ccf...[之前生成的hash密码]'
      # It is a good idea to put it on a known, fixed port
      c.NotebookApp.port = 8035 #选择一个端口
    6. 最后在远程服务器键入命令
      ipython notebook --profile=nbserver

      之后便可在本地机器上使用Web浏览器访问notebook了

      https://[IP or your.host.com]:8035

      (此处比较诡异的是需要加一位才对(https://[IP or your.host.com]:8036),后来才发现,8035已经被一个程序占用了,ipython会另选一个端口号使用)

    安装特定版本的Package请使用

    pip install ipython==2.3.0

    小记:ipython版本若是为4.0会出错,因为4.0版本为开发版,使用上面命令ipython profile create nbserver时不会创建ipython_notebook_config.py(坑。。。),最后终于在http://r97846001.blog.ntu.edu.tw/2015/07/09/ipython-importerror-no-module-named-jupyter_notebook-notebookapp/发现是版本的问题,所以需要安装适用的版本,但是!!!不需要按照他说的下载源文件或release安装的。。。,之前使用了pip install ipython=2.3.0发现不行,故狂搜乱找以为是其他问题,最后发现原来要用双等号啊~泪。。。http://nu-no.nl/ipython-server-cant-launch-no-module-named-notebook-notebookapp/,正所谓,“山重水复疑无路,柳暗花明又一村”,写次小记,特此纪念。

                         

  • 相关阅读:
    263 相对布局之3— 相对布局的综合案例
    262 相对布局之2— 相对布局的属性设置
    leetcode-----110. 平衡二叉树
    leetcode-----109. 有序链表转换二叉搜索树
    leetcode-----108. 将有序数组转换为二叉搜索树
    leetcode-----107. 二叉树的层次遍历 II
    leetcode-----106. 从中序与后序遍历序列构造二叉树
    leetcode-----105. 从前序与中序遍历序列构造二叉树
    leetcode-----104. 二叉树的最大深度
    leetcode-----103. 二叉树的锯齿形层次遍历
  • 原文地址:https://www.cnblogs.com/vin-yuan/p/4788674.html
Copyright © 2011-2022 走看看