码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 服务器搭建远程Jupyter环境


    服务器搭建远程Jupyter环境

    方法一 ssh远程使用jupyter notebook

    在远程服务器上,启动jupyter notebooks服务:

    jupyter notebook --no-browser --port=8889
    
    • 1

    在本地终端中启动SSH:

    ssh -N -f -L localhost:8888:localhost:8889 username@serverIP
    
    • 1

    其中: -N 告诉SSH没有命令要被远程执行; -f 告诉SSH在后台执行; -L 是指定port forwarding的配置,远端端口是8889,本地的端口号的8888。

    注意:username@serverIP替换成服务器的对应账号。

    最后打开浏览器,访问:http://localhost:8888/

    方法二 利用jupyter notebook自带的远程访问功能

    1. 生成默认配置文件

    jupyter notebook --generate-config
    
    • 1

    2. 生成访问密码(token)

    终端输入ipython,设置你自己的jupyter访问密码,注意复制输出的sha1:xxxxxxxx密码串

    In [1]: from notebook.auth import passwd
    In [2]: passwd()
    Enter password:
    Verify password:
    Out[2]: 'sha1:xxxxxxxxxxxxxxxxx'
    
    • 1
    • 2
    • 3
    • 4
    • 5

    这里可能会遇到一种情况: 官方教程默认情况下生成sha1,但实际情况生成了argon2

    from notebook.auth import passwd
    passwd()
    Enter password:
    Verify password:
    Out[2]:'argon2:$argon2id$v=19$m=10240,t=10,p=8$pcTg1mB/X5a3XujQqYq/wQ$/UBQBRlFdzmEmxs6c2IzmQ'
    
    • 1
    • 2
    • 3
    • 4
    • 5

    显然新版本的jupyter更换了默认的生成方式

    解决办法passwd()中传入参数 algorithm='sha1'

    from notebook.auth import passwd
    passwd(algorithm='sha1')
    Enter password:
    Verify password:
    Out[2]: 'sha1:67c9e60bb8b6:9ffede08254254b2e042ea597d771089e11aed'
    
    • 1
    • 2
    • 3
    • 4
    • 5

    3. 修改.jupyter/jupyter_notebook_config.py中对应行如下

    vi ~/.jupyter/jupyter_notebook_config.py
    c.NotebookApp.ip='*'
    c.NotebookApp.password = u'sha:ce...刚才复制的那个密文'
    c.NotebookApp.open_browser = False
    c.NotebookApp.port =8888 #可自行指定一个端口, 访问时使用该端口
    
    • 1
    • 2
    • 3
    • 4
    • 5

    4. 在服务器上启动jupyter notebook

    jupyter notebook
    
    • 1

    最后打开浏览器,访问:http://ip:8888/

    参考

    1. 远程访问服务器Jupyter Notebook的两种方法

    2. [jupyterlab密码设置不生成哈希值解决方法](

  • 相关阅读:
    AI技术产业热点分析
    uniapp(uncloud) 使用生态开发接口详情4(wangeditor 富文本, 云对象, postman 网络请求)
    三握,四挥,滑动窗口会了吗?面试TCP/IP经典问题总是忘?快来这里~
    XML解析库的下载和编译
    总结:Servlet
    kafka 3.0 跟着b站尚硅谷老师学习。(有需要zookeeper的配置(2.8之前)和Kraft(2.8之后))
    不可重复读和幻读详解(必看!!!)
    数据结构与算法 - 树
    Spring学习笔记1 启示录
    Vue3 toRaw 和 markRaw
  • 原文地址:https://blog.csdn.net/qq_39395755/article/details/128140207
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号