Jupyter notebook的安装及远程登陆的配置

环境及工具

  1. ubuntu16.04
  2. pip
  3. python3
  4. ipython

安装

官方教程: https://jupyter.readthedocs.io/en/latest/install.html

我是直接使用pip安装。

pip install jupyter

本地运行

jupyter notebook

配置远程登陆

如果你想在windows下的浏览器中连接登陆到jupyter notebook,你需要修改相应的配置。官方教程:https://jupyter-notebook.readthedocs.io/en/stable/public_server.html#securing-a-notebook-server

  • 步骤一

找到配置文件, Linux 在:/home/username/.jupyter/jupyter_notebook_config.py ,如果你发现没找到,莫急,我们可以手动生成它。输入下面命令即可。

jupyter notebook --generate-config
  • 步骤二

自定义登陆的密码,并将这个密码复制好,下面会用到。首先打开ipython,输入如下:

In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password:
Verify password:
Out[2]: 'sha1:67c9e60bb8b6:9ffede0825894254b2e042ea597d771089e11aed'
  • 步骤三

在配置文件jupyter_notebook_config.py修改以下几点,并将这几点的注释取消。这里使用vim打开这个文件,修改完后保存退出。退出时,它可能会报有配置文件内很多信息不该被注释,请忽略它。

c.NotebookApp.ip = '*' #设置远程所有ip可访问
c.NotebookApp.password = u'sha1:bcdccf...'#把刚刚复制的密码粘贴
c.NotebookApp.open_browser = False   #关闭浏览器
c.NotebookApp.port = 9999  #选一个可用的端口
  • 步骤四

我们在步骤三种选择了一个端口,默认是8888,但我修改了,因为8888这个端口已经在用。端口9999需要我们做端口转发,千万不要忘了。具体步骤我这里就不啰嗦了。

  • 步骤五

 如果不出意外的话,直接运行jupyter notebook 就可以,然后在浏览器中输入http:// [your ip]:your port 即可。但我就恰好出现了下面的报错信息。

Traceback (most recent call last):
  File "/home/bd/.virtualenvs/tensorflow/bin/jupyter-notebook", line 10, in 
    sys.exit(main())
  File "/home/bd/.virtualenvs/tensorflow/lib/python3.5/site-packages/jupyter_core/application.py", line 266, in launch_instance
    return super(JupyterApp, cls).launch_instance(argv=argv, **kwargs)
  File "/home/bd/.virtualenvs/tensorflow/lib/python3.5/site-packages/traitlets/config/application.py", line 657, in launch_instance
    app.initialize(argv)
  File "", line 2, in initialize
  File "/home/bd/.virtualenvs/tensorflow/lib/python3.5/site-packages/traitlets/config/application.py", line 87, in catch_config_error
    return method(app, *args, **kwargs)
  File "/home/bd/.virtualenvs/tensorflow/lib/python3.5/site-packages/notebook/notebookapp.py", line 1630, in initialize
    self.init_webapp()
  File "/home/bd/.virtualenvs/tensorflow/lib/python3.5/site-packages/notebook/notebookapp.py", line 1378, in init_webapp
    self.jinja_environment_options,
  File "/home/bd/.virtualenvs/tensorflow/lib/python3.5/site-packages/notebook/notebookapp.py", line 159, in __init__
    default_url, settings_overrides, jinja_env_options)
  File "/home/bd/.virtualenvs/tensorflow/lib/python3.5/site-packages/notebook/notebookapp.py", line 252, in init_settings
    allow_remote_access=jupyter_app.allow_remote_access,
  File "/home/bd/.virtualenvs/tensorflow/lib/python3.5/site-packages/traitlets/traitlets.py", line 556, in __get__
    return self.get(obj, cls)
  File "/home/bd/.virtualenvs/tensorflow/lib/python3.5/site-packages/traitlets/traitlets.py", line 535, in get
    value = self._validate(obj, dynamic_default())
  File "/home/bd/.virtualenvs/tensorflow/lib/python3.5/site-packages/notebook/notebookapp.py", line 867, in _default_allow_remote
    for info in socket.getaddrinfo(self.ip, self.port, 0, socket.SOCK_STREAM):
  File "/usr/lib/python3.5/socket.py", line 732, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -5] No address associated with hostname

后来我把jupyter notebook命令换成jupyter notebook --allow-root --no-browser --ip=0.0.0.0就ok了。效果如下所示:

Jupyter notebook的安装及远程登陆的配置_第1张图片

 

你可能感兴趣的:(ubuntu系统)