简介
背景
anaconda的Jupyter Notebook使用越来越普遍,但是默认形式的配置(默认目录,是否自动打开浏览器,端口等)未必是大家所适应的,本文即基于这样的问题,介绍Jupyter Notebook的自定义配置,以及如何远程登录Jupyter Notebook。
Jupyter Notebook自定义配置
类似于其他可以自定义配置的软件一样,Jupyter Notebook也有自己的配置文件,但是默认是不存在的,需要我们自己手动生成。我们可以使用以下命令生成配置文件。
1 | # linux和mac系统打开终端 |
根据系统不同生成的文件所在位置也不同,mac和linux系统都在~/.jupyter
目录下,windows也在当前用户目录下的.jupyter
目录。名称为jupyter_notebook_config.py
,几乎所有的配置都是在这一个文件中完成。
个性化配置
有了配置文件,我们就可以就可以进行个性化配置。使用编辑器打开配置文件,如果想要改变默认目录,在文件中搜索c.NotebookApp.notebook_dir
,在后边填写你期望的默认目录。如果你想改变端口,搜索NotebookApp.port
更改即可。注意,默认这些配置都是被注释掉的,你在更改后必须去掉这行前边的#
符号。
设置Jupyter Notebook远程登录
有时候我们想让Jupyter Notebook运行在服务器上,但是我们又想在本机通过浏览器操作,如何实现呢?
首先,我们为远程的Jupyter Notebook创建密码,打开IDE或者命令行,输入如下命令:
1 | from notebook.auth import passwd |
如果提示notebook模块不存在,那么使用conda install noteobok来安装。
输入passwd()
后需要两次键入密码,之后会产生一段密文,复制这段密文(包含sha1:
),找到下列行,修改配置文件如下:
1 | c.NotebookApp.ip='*' # 允许所有ip访问 |
之后,在服务器上使用jupyter notebook
启动,然后本机通过http://address_of_remote:8888
远程访问即可,登录界面需要输入设置的密码。
注意一定要确保端口是否打开,如果使用阿里云等服务,还要确保供应商的安全策略下端口是否打开,这块就不在本文讨论范围内啦,有问题可以留言。