Linux安装Jupyter并允许任意IP通过密码模式访问

Linux安装Jupyter并允许任意IP通过密码模式访问

  • 1. 安装Python
  • 2. 安装并启动Jupyter
  • 3. 修改配置文件使所有IP均可访问 Jupyter Notebook
  • 4. 使用密码模式进行访问

1. 安装Python

  1. 由于Jupyter Notebook是基于 Python 的,因此需要先安装 Python。

  2. 可以运行python -Vpip --version,来判断当前机器是否已经安装了Python和pip。如果已安装,可直接跳转至安装Jupyter。

  3. 运行以下命令,安装Python3和pip:

    sudo apt-get update
    sudo apt-get install python3 python3-pip
    

2. 安装并启动Jupyter

  1. 在终端中执行以下命令,使用 pip 安装 Jupyter Notebook:

    pip3 install jupyter
    
  2. 在终端中执行以下命令,启动 Jupyter Notebook 服务:

    jupyter notebook --allow-root
    
  3. 这个命令会在终端中输出 Jupyter Notebook 的访问链接。在浏览器中打开这个链接,就可以使用 Jupyter Notebook 了。注意此时的链接会带一个token,用户访问此链接进入 Jupyter Notebook 时无需输入密码。

3. 修改配置文件使所有IP均可访问 Jupyter Notebook

默认情况下,Jupyter Notebook只能通过localhost访问,如果需要通过其他IP地址访问Jupyter Notebook,可以按照以下步骤进行配置:

  1. 生成Jupyter Notebook配置文件

    在终端中,执行以下命令生成Jupyter Notebook的配置文件:

    jupyter notebook --generate-config
    

    执行以上命令后,系统会在用户主目录下生成一个名为.jupyter/jupyter_notebook_config.py的配置文件。

  2. 修改配置文件

    打开生成的配置文件,找到并修改以下两行:

    # c.NotebookApp.allow_origin = ''
    # c.NotebookApp.ip = 'localhost'
    

    allow_origin设置为需要访问Jupyter Notebook的IP地址或域名,例如:

    c.NotebookApp.allow_origin = '*'
    

    ip设置为'0.0.0.0',表示允许任意IP地址访问Jupyter Notebook,例如:

    c.NotebookApp.ip = '0.0.0.0'
    

    修改完成后,保存并关闭配置文件。

  3. 启动Jupyter Notebook

    在终端中,执行以下命令启动Jupyter Notebook:

    jupyter notebook
    

    在启动Jupyter Notebook后,可以在其他计算机上使用浏览器访问Jupyter Notebook,例如:

    http://192.168.1.100:8888?token=xxxxxxxx
    

    在这里,192.168.1.100是运行Jupyter Notebook的计算机的IP地址,8888是Jupyter Notebook的默认端口号。

4. 使用密码模式进行访问

默认情况下,Jupyter Notebook通过token模式访问,如果需要通过密码模式访问Jupyter Notebook,可以按照以下步骤进行配置:

  1. 生成密码的hash值

    在终端中,执行以下命令生成密码的hash值:

    python3 -c 'from notebook.auth import passwd; print(passwd())'
    

    执行该命令后,会提示输入密码,输入密码后,会输出类似以下的哈希值:

    argon2:$argon2id$v=19$m=10240,t=10,p=8$XXsxjFytgxxxxxOQbqQ$ybGyCHorea+v39nxxxxxxxxxxxxdw
    
  2. 修改配置文件

    打开生成的配置文件,找到并修改以下一行:

    # c.NotebookApp.password = ''
    

    password设置为你要设置的密码的hash值,例如:

    c.NotebookApp.password = 'argon2:$argon2id$v=19$m=10240,t=10,p=8$XXsxjFytgxxxxxOQbqQ$ybGyCHorea+v39nxxxxxxxxxxxxdw'
    

    修改完成后,保存并关闭配置文件。

  3. 启动Jupyter Notebook

    在终端中,执行以下命令启动Jupyter Notebook:

    jupyter notebook
    

    在启动Jupyter Notebook后,可以在其他计算机上使用浏览器访问Jupyter Notebook,例如:

    http://192.168.1.100:8888
    

    在这里,192.168.1.100是运行Jupyter Notebook的计算机的IP地址,8888是Jupyter Notebook的默认端口号。

  4. 此时就无需token了,用户需要在Jupyter Notebook的页面上输入配置文件中设置的密码的明文来访问Jupyter Notebook。

你可能感兴趣的:(Linux,linux,jupyter,python)