为jupyter notebook设置远程访问,这样就可以将jupyter notebook运行与服务器端,从本地远程访问了。在设置jupyter notebook远程访问时,发现还有很多关于jupyter notebook的插件,也一并在本文中介绍了该方法。
在只有cmd的情况下使用jupyter notebook
- 安装jupyter服务
pip install jupyter # 最好用pip3
- 配置远程访问jupyter
先输入python3进入交互模式 ,见图输入以下内容,设置好密码过后
这里你输入的密码,也是后面登入你服务器jupyter的密码,需牢记!
会自动生成一个Verify password复制保存下来
退出交互模式
2.1生成配置文件
在输入以下内容
jupyter notebook –generate-config
就会自动在根目录下生成文件(~/.jupyter/jupyter_notebook_config.py),这里可以用vim或者用相关ftp工具下载下来修改再覆盖,或者vscode ssh远程连接直接修改
2.2修改配置文件
建议先把jupyter_notebook_config.py文件传输到本地修改完成再上传
找到以下字符串进行修改
c.NotebookApp.ip=’‘ # 如果这里修过过后启动服务报错 则修改为c.NotebookApp.ip=’0.0.0.0’ c.NotebookApp.password=u’sha1***’ #就之前保存的验证密码
c.NotebookApp.open_browser =False # 设置是否自动打开浏览器
c.NotebookApp.port =8888 # 设置端口
c.NotebookApp.allow_remote_access = True
- 启动服务
这里推荐两种
入门:jupyter notebook –allow-root
但这种会一直占着窗口,无法执行其他命令
Ctrl + C 即可结束
进阶: nohup jupyter notebook –allow-root &
nohup表示no hang up, 就是不挂起, 于是这个命令执行后即使终端退出, 也不会停止运行.
但要手动结束
lsof -i : {端口号}
然后 kill -9 {对应pid} # 9的意思是发送KILL信号,立刻结束,可能会有数据丢失
启动以后在本机 输入http://{服务器ip}:8888 进行访问
第一次进入要输入之前设置的密码,但为了效率见第4步
如果以上正常设置了过后还是不能远程访问,可能有几种情况
服务器购买商的安全组没有放行, 这里我用阿里云进行演示,见图,这样就ok了
- 安装增强功能(自动补全,运行时间之类)
在终端中依次执行以下4行代码
pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install –user
pip install jupyter_nbextensions_configurator
jupyter nbextensions_configurator enable –user
执行完成以后,重启jupyter,即可在首页看到附加项
然后进行相应更改,新建相关环境的notebook 可以开心写代码了。
Jupyter notebook插件使用
安装插件
1、安装jupyter插件 jupyter_contrib_nbextensions
pip install jupyter_contrib_nbextensions
2、激活该插件:
jupyter contrib nbextension install --user
安装好插件之后,下次再在浏览器中打开jupyter notebook就可以在界面上看到Nbextentions插件选线啦
然后再打开终端即可使用插件了
推荐使用插件
推荐三个常用的插件:
Table of Contents:可以再左侧查看
Markdown的大纲视图
Variable Inspector:可以查看变量名、类型、大小形状(在矩阵计算式非常实用)和值
Excecute Time:查看每个代码块执行的时间
关联Jupyter Notebook和conda的环境和“nb_conda“
1、安装nb_conda
conda install nb_conda
可以在Conda类目下对conda环境和包进行一系列操作,安装好nb_conda后,打开jupyter notebook如下图:
2、切换内核
可以在jupyter notebook内的“Kernel”类目里的“Change kernel”切换内核
卸载nb_conda
canda remove nb_conda
以上为jupyter notebook在服务器端设置远程访问,以及为jupyter notebook设置插件的方法。
参考:
https://blog.csdn.net/qq_42137895/article/details/104283459
https://blog.csdn.net/weixin_41010198/article/details/107183880