远程访问Jupyter Notebook的两种方式:命令行和配置文件

相关配置:Ubuntu 16.04服务器,本地Win10,使用了Xshell,Xftp工具。

相关配置主要分为三步:

  • 服务器上的Jupyter配置
  • 本地Xshell的配置
  • 使用Jupyter Notebook

其中服务上的配置方法有两种:

  • 使用命令行,操作简单,登录稍繁
  • 使用配置文件,操作略繁,登陆简单

命令行配置服务器

  • 首先要确保服务器上安装了Jupyter,如果未安装,安装命令如下:
pip install jupyter
  • 命令行配置

    • 激活环境:conda activate 环境名
    • 运行Jupyter:jupyter notebook --no-browser --port=目标端口
    • 复制token
    • 直接转到文末的本地Xshell配置
    • 注意:端口号应大于1024,并避开已经启用的端口号,本文采用8000

使用配置文件

生成配置文件

输入以下命令可以生成Jupyter的配置文件

jupyter notebook --generate-config

配置文件路径默认在/root/.jupyter/jupyter_notebook_config.py

生成密钥

启动ipython命令行:

$ ipython

输入密码,生成密钥:

In[1]: from notebook.auth import passwd
In[2]: passwd()
Enter password:
Verify password:
Out[2]: 'sha1:0000000000000000000000000000000000000000000000000'

编辑配置文件

可以输入命令直接进行编辑:

vim ~/.jupyter/jupyter_notebook_config.py

可以通过Xftp下载配置文件,路径如上,在本地编辑后上传,更方便

具体更改内容如下:

c.NotebookApp.allow_remote_access = True
c.NotebookApp.allow_root = True ## 表示是否允许jupyter使用root权限
c.NotebookApp.ip = '*' ## 表示允许任意IP访问
c.NotebookApp.port = 8000 ## 可以指定任意端口,注意避开已用端口和公认端口
c.NotebookApp.open_browser = False
c.NotebookApp.password = u'sha1:00000000....' ## 刚刚设置密码时生成的密钥

注意:配置文件都是注释的,应删除修改行的注释符#

端口号应大于1024,并避开已经启用的端口号

本地Xshell配置

本地机是Window,需要通过Xshell工具来访问。

  • 首先连接上你的服务器
  • 在Xshell中,反键会话,进入属性
  • 点击连接->SSH->隧道,点击添加



注意

  • 当类型选择"Local(Outgoing)"的时候,'源主机’表示使用的本地ip地址,可以是localhost也可以是本地内网ip或者公网ip,侦听端口填写本地的一个端口
  • “目标主机”表示服务器端的ip地址,可以是服务器本地的地址localhost或者是服务器可以访问到的一个ip地址,目标端口填写之前配置的端口,本文是8000

使用Jupyter

  • 服务器启动Jupyter Notebook,命令为: $ jupyter notebook
  • 本地浏览器输入http://localhost:8888/,即源主机:侦听端口
  • 输入之前设置好的密码,即可

远程访问Jupyter Notebook的两种方式:命令行和配置文件的更多相关文章

  1. SpringBoot配置Bean的两种方式--注解以及配置文件

    一.注解方式 编写实体类: package com.example.bean; import org.springframework.boot.context.properties.Configura ...

  2. 用Ubuntu的命令行来远程访问Jupyter Notebook

    远程访问Jupyter Notebook 相关配置:Ubuntu 16.04服务器,本地Win10,使用了Xshell,Xftp工具. 相关配置主要分为三步: 服务器上的Jupyter配置 本地Xsh ...

  3. cmd窗口使用sftp命令非密钥和密钥登录SFTP服务器的两种方式

    cmd窗口使用sftp命令非密钥和密钥登录SFTP服务器的两种方式 一.在Windows环境下搭建SFTP服务器可参见http://www.cnblogs.com/Kevin00/p/6341295. ...

  4. 创建安卓模拟器的两种方式及常用Android命令介绍

    创建安卓模拟器有以下两种方式: 1>通过图形界面创建,在Eclipse中单击Windows->Android Virtual Device Manager启动图形界面窗口 2>如果用 ...

  5. 通过属性 Cesium的FBO主要支持两种方式

    角色其实就是一类权限的分组,所以给用户分配角色其实也是在给用户分配权限.在oracle中有三个比较常用的角色.对于一般不是很严格的系统可以授予开发用户CONNECT.RESOURCE角色权限即可. 其 ...

  6. WCF服务使用(IIS+Http)和(Winform宿主+Tcp)两种方式进行发布

    1.写在前面 刚接触WCF不久,有很多地方知其然不知其所以然.当我在[创建服务->发布服务->使用服务]这一过程出现过许多问题.如客户端找不到服务引用:客户端只在本机环境中才能访问服务,移 ...

  7. 【Python】Python figure显示的两种方式

    1. 两种方式: 终端输出图像新窗口输出图像 2. 终端输出命令: %matplotlib inline 新窗口输出命令: %matplotlib qt5 注意此两个语句是命令行输入,若在spyder ...

  8. day05-1 执行Python程序的两种方式

    目录 执行Python程序的两种方式 第一种:交互式 第二种:命令行式 三个步骤 两种方式的区别 执行Python程序的两种方式 第一种:交互式 在cmd中运行 优点:直接给出结果,执行效率高,及时报 ...

  9. Navicate 连接阿里云MySQL(两种方式及原理讲解)

    Navicate 连接阿里云(两种方式及原理讲解) 一.直连方式(通过3306端口) 1.概述 2. 环境准备 3.操作及讲解 二.使用SSH通道 1.概述 2.环境准备 3.操作及讲解 如果对你有帮 ...

随机推荐

  1. C#异步迭代 IAsyncEnumerable 应用

    最近用WPF做金税盘开发中有这样一个需求,批量开票每次开票都需要连接一次金税盘. 比如我有发票 a, b ,c ,d e 这五张发票,每次开具发票都需要调用金税盘底层,才能正常开票. 首先,尝试写第一 ...

  2. 深度解读MRS IoTDB时序数据库的整体架构设计与实现

    [本期推荐]华为云社区6月刊来了,新鲜出炉的Top10技术干货.重磅技术专题分享:还有毕业季闯关大挑战,华为云专家带你做好职业规划. 摘要:本文将会系统地为大家介绍MRS IoTDB的来龙去脉和功能特 ...

  3. 小程序动态修改页面标题setNavigationBarTitle

    可以使用setNavigationBarTitle方法动态设置页面标题 wx.setNavigationBarTitle({ title: options.name, })

  4. react 工程目录简介

    创建一个 todolist 项目,下图是其工程目录. node_modules文件夹 里面存放的是我们所建项目放所依赖的第三方的包 public文件夹 favicon.ico 图标文件,网页标题左上角 ...

  5. Gym 100783C Golf Bot FFT

    大致题意: 给你N个整数和M个整数,问这M个数中,有几个数可以表达成那N个整数中一个或者两个整数的和. 分析: 算是半个裸的FFT.FFT可以用来在nlongn时间内求高精度乘法,我们先模拟一下乘法. ...

  6. Redis 底层数据结构之字典

    文章参考 <Redis 设计与实现>黄建宏 字典 在字典中,每个键都是独一无二的,程序可以在字典中根据键查找与之相关联的值,或者通过键来更新和删除值. 字典在 Redis 中的应用相当广泛 ...

  7. Unknown custom element: <...> - did you register the component correct?

    之前用过的组件没有出现过任何问题,但偏偏在其他目录下引用就出问题了.组件的名称.import的路径都没任何问题,发现这是因为组件name填写不规范所导致的. 在定义组件的时候我们要严格按照官方文档要求 ...

  8. Binding(五):多路绑定

    Binding不止能绑定一个源,它还能绑定多个源,这就是我们这节要讲的多路绑定:MultiBinding. 使用多路绑定跟一般的绑定还是有区别的,首先它并不能很好的在标记扩展中使用,另外,使用多路绑定 ...

  9. 面试题五:Spring

    Spring IoC 什么是IoC? 容器创建Bean对象,将他们装配在一起,配置并且管理它们的完整生命周期. Spring容器使用依赖注入来管理组成应用程序的Bean对象: 容器通过提供的配置元数据 ...

  10. linux学习之路第七天(时间日期类指令详解)

    时间日期类 1.date指令 date指令 - 显示当前日期 基本语法 1)date (功能描述:显示当前时间): 2) date + %Y (功能描述:显示当前年份) 3)date+%m( 功能描述 ...