Jupyter Notebook 配置学习笔记

Jupyter Notebook 配置学习笔记

一、生成配置文件

  1. 生成默认配置文件

    bash 复制代码
    jupyter notebook --generate-config
    • 这会在 ~/.jupyter/ 目录下生成一个默认的配置文件 jupyter_notebook_config.py

    • 示例输出:

      复制代码
      Writing default config to: /public/home/2022099/.jupyter/jupyter_notebook_config.py

二、设置密码

  1. 设置密码

    bash 复制代码
    jupyter notebook password
    • 输入密码并验证后,密码的哈希值会被写入到 ~/.jupyter/jupyter_server_config.json 文件中。

    • 示例输出:

      复制代码
      [JupyterPasswordApp] Wrote hashed password to /public/home/2022099/.jupyter/jupyter_server_config.json
  2. 查看 jupyter_server_config.json 文件内容

    json 复制代码
    {
      "IdentityProvider": {
        "hashed_password": "argon2:$argon2id$v=19$m=10240,t=10,p=8$K1xFxKj6Tuqu9osrt7uNVw$NmnIHtXd7KroOQ3t1d6sX5doYiymcgBaCBTjUi4ioEM"
      }
    }

三、编辑 jupyter_notebook_config.py 文件

  1. 打开配置文件

    bash 复制代码
    vim ~/.jupyter/jupyter_notebook_config.py
  2. 添加或修改以下配置

    python 复制代码
    # 启用密码保护
    c.ServerApp.password_required = True
    c.ServerApp.password = 'argon2:$argon2id$v=19$m=10240,t=10,p=8$K1xFxKj6Tuqu9osrt7uNVw$NmnIHtXd7KroOQ3t1d6sX5doYiymcgBaCBTjUi4ioEM'
    
    # 禁止自动打开浏览器
    c.ServerApp.open_browser = False
    
    # 允许从任何 IP 地址访问
    c.ServerApp.ip = '0.0.0.0'
    
    # 设置端口
    c.ServerApp.port = 8888
    
    # 允许 root 用户登录
    c.ServerApp.allow_root = True
    
    # 设置启动根目录(如果需要指定特定目录,取消注释并填写路径)
    # c.ServerApp.root_dir = '/path/to/your/directory'
    
    # 允许访问隐藏文件
    c.ContentsManager.allow_hidden = True

四、启动 Jupyter Notebook

  1. 启动 Jupyter Notebook

    bash 复制代码
    jupyter notebook
    • 根据配置文件中的设置,Jupyter Notebook 会启动在指定的 IP 地址和端口上。

五、其他注意事项

  1. 确保配置文件路径正确

    • 配置文件路径为 ~/.jupyter/jupyter_notebook_config.py~/.jupyter/jupyter_server_config.json
    • 如果路径不正确,可能导致配置不生效。
  2. 备份配置文件

    • 在修改配置文件之前,建议备份原始文件,以防出现问题。
  3. 检查权限

    • 确保你对配置文件和启动目录有适当的读写权限。
相关推荐
李李李勃谦11 分钟前
Flutter 框架跨平台鸿蒙开发 - 手工技能学习
学习·flutter·华为·harmonyos
arvin_xiaoting14 分钟前
OpenClaw学习总结_IV_认证与安全_1:OAuth与认证详解
服务器·学习·安全
768dh15 分钟前
NCP1654学习(二)
学习
世人万千丶17 分钟前
开源鸿蒙跨平台Flutter开发:时间管理番茄钟应用
学习·flutter·华为·开源·harmonyos
海海不掉头发20 分钟前
【大模型Prompt-Tuning方法进阶+提示词】-基础学习篇
人工智能·学习·prompt
咬_咬35 分钟前
go语言学习(数组与切片)
开发语言·学习·golang·数组·切片
Chef_Chen38 分钟前
Agent学习--LLM--推理熵
人工智能·学习·机器学习
ECT-OS-JiuHuaShan42 分钟前
科学的本来意义,是基于规范的共识逻辑,而非共识方法
人工智能·科技·学习·算法·生活
知识分享小能手1 小时前
MongoDB入门学习教程,从入门到精通,MongoDB的了解应用程序的动态(18)
数据库·学习·mongodb
bobasyu1 小时前
Claude Code 源码笔记 -- State状态流转
笔记