Jupyter Notebook远程登录配置

我的梦境 提交于 2019-11-27 15:47:39

方法如下:

1. 生成配置文件

jupyter notebook --generate-config

2. 设置密码、获取秘钥

from notebook.auth import passwd  
passwd()
[out]
Enter password: 
Verify password: 
‘sha1:ce23d945972f:34769685a7ccd3d08c84a18c63968a41f1140274
  • 复制代码最后产生的秘钥

3. 修改默认配置文件

vim ~/.jupyter/jupyter_notebook_config.py
  • 修改如下4处:
  • 行号分别对应:203,264,273,284
c.NotebookApp.ip=’*’ 
c.NotebookApp.password = 'sha:ce…刚才复制的那个密文'
c.NotebookApp.open_browser = False  
c.NotebookApp.port =8888 #随便指定一个端口

自动化脚本

python版本 >= 3.6

from notebook.auth import passwd
import os

home_path = os.path.expanduser('~')
cfg_path = f"{home_path}/.jupyter/jupyter_notebook_config.py"
if not os.path.exists(cfg_path):
    os.system("jupyter notebook --generate-config")
key = passwd()
port = input("port(default:8888): ") or "8888"
with open(cfg_path, "r") as f:
    data = f.readlines()
modify = {
    "c.NotebookApp.ip": "c.NotebookApp.ip= '*'\n",
    "c.NotebookApp.password": f"c.NotebookApp.password = '{key}'\n",
    "c.NotebookApp.open_browser": "c.NotebookApp.open_browser = False\n",
    "c.NotebookApp.port": f"c.NotebookApp.port = {port}\n"
}
for i, j in enumerate(data):
    for k in list(modify.keys()):
        if k in j:
            data[i] = modify[k]
            modify.pop(k)
with open(cfg_path, "w") as f:
    f.writelines(data)
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!