服务器配置远程连接jupyter-notebook踩坑指南

本文详细介绍了如何在服务器上配置Jupyter Notebook以处理大型数据集和利用更强的计算资源。首先,在服务器的数据盘创建虚拟conda环境,并修改环境变量。接着,激活虚拟环境并配置Jupyter Notebook,包括设置密码、指定IP和端口。此外,还介绍了如何安装和启用自动补全功能。最后,提供了内网和外网连接服务器Jupyter Notebook的步骤,以及通过SSH隧道实现远程访问。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为什么要远程连接服务器jupyter-notebook:

1.有些很大的数据集,动则10G,20G,自己的笔记本内存吃不消

2.服务器上的CPU、GPU计算能力往往比自己电脑要好不少

 

配置流程:

注:因为服务器是很多人共用,而且比如服务器固态硬盘home文件夹空间小,机械硬盘data盘空间大。如果把虚拟conda环境配置在home下,一旦home盘满了,我的虚拟conda就启动不了了,所以这次配置我是先把虚拟conda环境布置在data盘,然后再配置jupyter notebook

一、创建虚拟conda

1.在data盘创建虚拟conda

$ conda create --prefix=/data/username/yourcondaname python=3.5

2.修改环境变量

在 .condarc 文件(如果没有自己直接创建一个)新增环境配置

envs_dirs:
  - /data/username/.conda/envs
pkgs_dirs:
  - /data/username/.conda/pkgs

完成后,使用 conda info 检验是否完成配置。

 

二、jupyter notebook配置

1. 切入自己的conda虚拟环境

$ source activate yourcondaname

2.生成jupyter notebook 配置文件

$ jupyter notebook --generate-config

3.配置密码

jupyter 5.0版本以上可以直接用以下命令

$ jupyter notebook password
Enter password:  ****
Verify password: ****

如果上述方法失败,可以直接暴力法

$ python
$>>> from notebook.auth import passwd
$>>> passwd()
输入两次密码后,会得到密码哈希值 ’sha1:**************’

然后把密码 ’sha1:**************’ 复制到jupyter配置文件 jupyter_notebook_config.py 和 jupyter_notebook_config.json中 password内容中

4.配置 jupyter_notebook_config.py 文件

c.NotebookApp.ip = '*'
c.NotebookApp.allow_root = True
c.NotebookApp.port = 8888

将上面内容直接粘贴到 jupyter_notebook_config.py 文件中

以上服务器的配置就设置完成了。

三、配置notebook自动补全(可选)

在notebook上没有自动补全,写代码是非常难受的,所以非常有必要进行配置。

切换conda虚拟环境后,

conda install -c conda-forge jupyter_contrib_nbextensions
conda install -c conda-forge jupyter_nbextensions_configurator

在我们打开jupyter notebook后(此步骤可以在我们完成后面的所有步骤后再打开notebook,勾选处理Nbextensions选项)

点击“Nbextensions”->取消“disable configuration for nbextensions without explicit compatibility (they may break your notebook environment, but can be useful to show for nbextension development)”->选择“Hinterland”

四、连接

内网连接:

切换虚拟conda环境后,直接在服务器上运行

$ jupyter notebook

外网连接:

先在服务器切换虚拟conda环境后,开启jupyter-notebook

$ jupyter notebook --no-browser --port=8889 --ip=127.0.0.1

如果想要服务器一直运行notebook,则加上nohup指令。

$ nohup jupyter notebook --no-browser --port=8889 --ip=127.0.0.1

本地与服务器端口ssh连接建立,本地cmd终端输入:

$ ssh -N -f -L localhost:8888:localhost:8889 -p *****(port) remote_user@remote_host

最后在本地浏览器键入地址127.0.0.1:8888,即可远程操作服务器notebook

 

参考链接:

https://www.zhihu.com/search?type=content&q=%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%BF%9C%E7%A8%8B%E8%BF%9E%E6%8E%A5jupyter-notebook

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值