首页 > 编程语言 > Jupyter Notebook远程登录及密码设置操作
2020
09-27

Jupyter Notebook远程登录及密码设置操作

操作所涉及的文件都在当前用户下面的隐藏文件:

1. 打开Anaconda Prompt(如果之前生成过Config配置文件则不需要第一步)

终端输入:

jupyter notebook --generate-config

注 :root用户请用:jupyter notebook --generate-config --allow-config

操作成功会提示已写入文件

2. 生成密码

jupyter notebook password

Enter password:
Verify password:

注意密码输入时不显示

成功操作后显示写入 .jupyter/jupyter_notebook_config.json文件,存的是加密过后的密码,之后需要把它写到notebook配置文件中。

3. 修改config文件

在 jupyter_notebook_config.py 中找到下面的行,取消注释并修改。

c.NotebookApp.ip='*' # 星号代表任意ip,这个跟mysql的权限设置一样,所以说知识是互通的
c.NotebookApp.password = u'sha' #就是把生成的密码json文件里面的一串密码放这里
c.NotebookApp.open_browser = False #不自动打开浏览器
c.NotebookApp.port =8888 #可自行指定一个端口, 访问时使用该端口

4. 重启jupyter notebook

局域网内 ip+端口号 即可访问

补充知识:linux服务器上配置Jupyter notebook与登录时密码无效踩坑

配置流程

1/生成配置文件

jupyter notebook --generate-config

2/生成秘钥

在终端输入 ipython(别漏了这步),创建一个秘钥

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

生成完毕后,输入exit(),退出编辑页面。

3/修改配置文件

vi ~/.jupyter/jupyter_notebook_config.py
c.NotebookApp.ip='服务器IP' # 应该是'*'
c.NotebookApp.password = u'sha:ce...刚才复制的那个秘钥'
c.NotebookApp.open_browser = False
c.NotebookApp.port =8888 #随便指定一个端口

修改完毕后,按ESC,然后输入:wq保存。

踩坑

配置好后,在本地远程登录jupyter notebook输入密码后一直显示密码无效(Invalid credentials)。。

细看时候发现有冲突:jupyter_notebook_config.json has higher priority——那不就意味着刚才配置的.py文件都白搞了吗。。

发生冲突:

解决办法是:

强行重置了jupyter notebook的密码 。输入命令:

jupyter notebook password

然后设置你的密码即可。

以上这篇Jupyter Notebook远程登录及密码设置操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持自学编程网。

编程技巧