本地访问远程服务器上的jupyter notebook+jupyter上使用虚拟环境

没想到搞这搞了这么久,记录一下网上查资料+自己尝试踩到的坑。

本地访问远程服务器上的jupyter notebook

我是按照知乎 如何设置远程访问的Jupyter Notebook服务器-04(服务器篇)这篇文章来配的,几点需要注意。

一是文中说的所有关于jupyter的设置都是在远程服务器上进行的。

二是他的(3)编辑配置文件 这一步可以不写‘*’,换成远程服务器的ip。这里我因为不熟悉所谓内网ip搞了好久,总结下经验教训就是在远程服务器上ifconfig,然后把出来的所有网里的inet addr都拿去试一试(当然127.0.0.1这种肯定不用试了)。然后jupyter notebook运行下看看ok不,应该只有一个ip设好后不会报错,其他的都会报错说OSError: [Errno 99] Cannot assign requested address。以及他的改端口这一步不是必须的,当然改ip是必须的。

三是防火墙那步开始就不用跟了,对于没有root权限的来说是没办法设的。我后来找了 通过 SSH 端口转发搭建 Jupyter notebook 服务器 这篇文章,捣鼓了一下,ssh转发命令应该如下。

ssh -L a:b:c <username>@<remote ip> -p <port>
# 这里面的a,b,c处分别填写:
# a处:随便填一个用来登jupyter的端口,示例给的4000
# b处:(3)编辑配置文件 这一步里写的ip。
# c处:(3)里面改的端口,没改的看下面这条
# 可以再远程服务器上运行jupyter,然后它会给你一个链接,那个链接就是b:c的组合,直接copy来用就行

至于abc后面那些username之类的是什么呢?我的情况是实验室的小集群有统一的对外ip,所以平时一般都是我们拿分给我们的账号从一个指定的端口先登入,然后再通过ssh到具体的服务器上。

故先在远程服务器上运行jupyter,然后另开一个本地终端输入上面的命令,然后它会让你输密码,像是登录了一次一样。之后再试着在本地浏览器上输入 localhost:4000,这里的4000就是上面a处你设来等jupyter的端口。接下来就可以看到他们所谓的浏览器上加载出来jupyter登录界面要你输密码这步了。

jupyter上使用虚拟环境

本来以为搞到这里就好了,结果在服务器上能用的虚拟环境jupyter上运行不了,查了后具体参考 windows系统下jupyter notebook使用虚拟环境 这篇。用的是他标的【未测试】那里面的方法。注意的是他的最后一个命令要改成

python -m ipykernel install --user --name Name

如果不加上--user的话会报错[Errno 13] Permission denied

然后重新运行下jupyter,应该可以在kernal里找到你要的虚拟环境了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值