Jupyter Notebook 远程访问配置详解
作者:MachinePlay 发布时间:2023-09-11 03:19:06
问题
Jupyter Notebook可以说是非常好用的小工具,但是不经过配置只能够在本机访问
笔者参阅了文档对jupyter notebook进行配置,实现了跨主机浏览器访问
安装jupyter notebook
笔者使用conda包管理
conda install jupyter notebook
生成默认配置文件
jupyter notebook --generate-config
将会在用户主目录下生成.jupyter文件夹,其中jupyter_notebook_config.py就是刚刚生成的配置文件
生成秘钥
输入 ipython,进入ipyhon命令行
输入
In [1]: from notebook.auth import passwd
In [2]: passwd()
这里要求你输入以后登录使用的密码,然后生成一个秘钥,记得保存好秘钥,以免丢失。
Enter password:
Verify password:
Out[2]: 'sha1:1b4ea9662b35:3e3d6a823d264d466f125a0939623c05e7b66007'
修改配置文件
修改用户主目录下~/.jupyter/jupyter_notebook_config.py文件
取消c.NotebookApp.password = ''"注释,并将生成的秘钥复制进去
c.NotebookApp.password = 'sha1:1b4ea9662b35:3e3d6a823d264d466f125a0939623c05e7b66007'
取消下面几项注释,并注释修改ip、端口、不自动打开浏览器
c.NotebookApp.ip='*'#×允许任何ip访问
c.NotebookApp.open_browser = False
c.NotebookApp.port =8888 #可自行指定一个端口, 访问时使用该端口
如果是比较老的jupyter notebook版本还会有 allow_remote_access之类的一个设置,记得改成True并取消注释。
大功告成
测试
在服务器开启jupyter notebook
浏览器不会自动开启
其他电脑在浏览器输入服务器ip:8888,能够访问jupyter notebook
例,我服务器ip 192.168.199.219,笔记本ip 192.168.199.166
服务器输入
jupyter notebook
有如下提示
(tf1.12) yep@yepdlpc:~$ jupyter notebook
[I 00:10:58.671 NotebookApp] Writing notebook server cookie secret to /run/user/1000/jupyter/notebook_cookie_secret
[W 00:10:58.992 NotebookApp] WARNING: The notebook server is listening on all IP addresses and not using encryption. This is not recommended.
[I 00:10:58.998 NotebookApp] Serving notebooks from local directory: /home/yep
[I 00:10:58.998 NotebookApp] 0 active kernels
[I 00:10:58.998 NotebookApp] The Jupyter Notebook is running at: http://[all ip addresses on your system]:8888/
[I 00:10:58.998 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
在笔记本浏览器输入192.168.199.219:8888.
成功远程访问服务器的jupyter notebook
后记
输入密码,接可以愉快的在笔记本写代码,在服务器跑代码啦
可以在jupyter开terminal,连ssh登陆都省了~~
不过如果服务器shell关闭后就无法访问了,可以在服务器后台运行jupyter notebook来避免这一问题
nohup jupyter notebook&
这样shell关闭也不会有问题啦
来源:https://www.jianshu.com/p/3cc167bd63dd
猜你喜欢
- 阿里云 视频直播 配置 及 PHP-SDK 接入教程个人感觉,阿里的文档比微信的要坑很多…微信最多是有些比较重要的东西放到比较不起眼、比较难
- 安装的依赖包flaskpymysqlflask_scriptflask_migrateflask_sqlalchemy创建Flask项目(项
- 我一直使用Microsoft的FrontPage 98来开发ASP/ADO之类的Internet数据库应用程序。现在我听说许多人都非常信奉采
- 在VBScript中,有一个On Error Resume Next语句,它使脚本解释器忽略运行期错误并继续脚本代码的执行。接着该脚本可以检
- 很多时候关心的是优化SELECT 查询,因为它们是最常用的查询,而且确定怎样优化它们并不总是直截了当。相对来说,将数据装入数据库是直截了当的
- 1、现象系统提示找不到指定的文件:Error running 'hello': Cannot run program &qu
- 著名的老掉牙的IE6.0在我这里已经有六年工龄了,前几天朋友拿到个IE8.0新的Beta版本,我的Sever2003装不上,大为扫兴。Chr
- 概述在PHP中有一种代码复用的技术, 因为单继承的问题, 有些公共方法无法在父类中写出, 而 Trait可以应对这种情况, 它可以定义一些复
- CSS执行顺序与优先权的问题其实就是一个冲突解决的问题,当同一个元素(或内容)被CSS选择符选中时,就要按照优先权取舍不同的CSS规则,这其
- 代码如下:<% Function Bytes2bStr(vin,cSet) Dim BytesStream,StringReturn
- 如下所示:result = result.T.sort(['confidence','support'],
- #coding:utf-8 import urllib.request import xml.dom.minidom import sqli
- 本文实例讲述了python修改操作系统时间的方法。分享给大家供大家参考。具体实现方法如下:#-*- coding:utf-8 -*-impo
- 读《论语》,子张十九,子夏曰:博学而笃志,切问而近思,仁在其中矣。 博学:架构需要广度,要尽量多学习各方面的知识。笃志:除了广度,架构师还需
- 一、前言今天要介绍的 click 则是用一种你很熟知的方式来玩转命令行。命令行程序本质上是定义参数和处理参数,而处理参数的逻辑一定是与所定义
- 上传问题可以说是网络编程中经常遇到的,也是一个很重要的问题,我们不仅要实现上传文件,图片等基本功能,还有考虑到上传程序的安全性,本文介绍了一
- 前言Django自带一个用户认证系统,用于处理用户账户、群组、许可和基于cookie的用户会话。Django的认证系统包含了身份验证和权限管
- 本文实例讲述了Python函数的返回值、匿名函数lambda、filter函数、map函数、reduce函数用法。分享给大家供大家参考,具体
- 页面中无法看见页面,指向的连接网页无法显示 解决方法:1、首先在Dreamweaver中不能中文作为文件名。连目录名也最好是英文的。2、如果
- DataLoaderDataset不能满足需求需自定义继承torch.utils.data.Dataset时需要override __ini