首页 > 其他分享 >MacBook 配置远程 jupyter lab

MacBook 配置远程 jupyter lab

时间:2023-05-30 19:55:23浏览次数:50  
标签:Jupyter 环境 lab MacBook 访问 花生壳 Lab jupyter 远程

在从事数据分析/处理过程中,Jupyter Lab 是一个常见且便捷的工具,它属于 Jupyter Notebook 的升级版本。
除了可以在本机搭建 Jupyter 环境,它还支持通过网络远程访问,从而实现在本地编写查看代码,在远程服务器上运行代码的功能。

需求背景

我日常使用的是一台 M1 版本的 MacBook Air,它足够轻薄,续航优秀,我平常一般都会随身携带。
但有时需要跑一些耗时长的任务,或者需要在其他电脑上也能便捷访问相关资料,配置一台支持远程操作的设备会更为便利。
我个人闲置了一台2016款 15 寸 MacBook Pro,16+256的配置,它的性能可能较低。
但相比于租一台 16G 内存的服务器,一年超过两千元的费用,使用个人闲置电脑搭建远程 Jupyter Lab 服务是一个极为经济实惠的选项。

操作步骤

在本地电脑上安装 Miniconda 及配置相应的环境这属于基本操作。
除此之外,要实现远程访问 Jupyter Lab,还需要处理如下问题:

  1. 解决内网穿透问题
    要实现远程网络访问,一般需要向宽带运营商申请公网IP。如果没有这个条件,也可以使用内网穿透服务作为替代。
    花生壳账号的免费套餐服务已经基本上足以支撑我的需求,官网也有较为详细的教程可供参考。

    更新:
    花生壳服务我使用过一段时间,但不知道是家庭网络问题还是系统适配问题,运行几天后花生壳就会掉线,提工单也没有解决问题。
    曲线救国的方式是设置定时任务,每天凌晨自动重启花生壳服务……
    后来了解到 cpolar 也可以提供内网穿透服务,我不清楚技术原理与实现方案,但换成 cpolar 可以提供 7*24 小时稳定的穿透服务。

  2. 在 Jupyter Lab 中配置多个环境
    大家使用 Conda 的一个重要原因就是它可以支持配置不同版本的环境,以满足不同需求下对开发环境的差异要求。
    相较于在命令行中先激活相应环境再打开 Jupyter Lab,直接在 base 环境下开启服务,然后在 Jupyter Lab 中根据不同需求切换环境是个更为便利的选择。
    这里需要:

  • 创建名为 yourEnv 的新环境
    conda create --name yourEnv python=3.9
  • 将新环境添加到 kernel 里,以供在 Jupyter Lab 中便捷切换
conda activate yourEnv  // 激活环境
conda install ipykernel // 安装 ipykernel
python -m ipykernel install --user --name yourEnv --display-name yourEnv  // 把环境添加到 kernel

这一步骤有很多资料可供参考,在此不做赘述。配置好这一步骤后,在 Jupyter Lab 中即可随意切换 Kernel,如下图:

设置后台静默运行

常见的操作是在命令行中打开 Jupyter Lab 服务,直接在本地浏览器打开 8080 端口进行访问。
如果把 Terminal 页面关闭,对应的服务也将终止。
但既然是配置在一台远程 7*24 运行的设备上,我们更希望 Jupyter Lab 服务可以随时访问,并且支持多设备访问云端保存的最新结果。
这种情况下,我们可以选择把 Lab 由前台命令行运行转为后台静默运行的方式。

在 Mac 平台下,使得 Jupyter Lab 后台静默运行,输入如下命令即可:

nohup jupyter lab --allow-root &

参考链接

  1. 远程访问JupyterNotebook(花生壳内网穿透)
  2. Installing on Linux
  3. conda create
  4. Jupyter Lab 密码登录、远程访问

标签:Jupyter,环境,lab,MacBook,访问,花生壳,Lab,jupyter,远程
From: https://www.cnblogs.com/xingyucn/p/16914362.html

相关文章

  • 【无人机三维路径规划】基于蚁群算法实现无人机三维路径规划含Matlab代码
    ⛄内容介绍随着无人机可执行任务的多样化,航迹规划成为其顺利完成任务的基本前提。针对该问题,提出了基于蚁群算法的无人机航迹规划方法。运用等效地形模拟方法,将作战区域中的敌方威胁、地形障碍等效为山峰,构建了无人机航迹规划的场景。以此为基础,采用抽象蚁群,对起始点和终点已知的......
  • git、gitlab、github
    工作区暂存区版本库(本地仓库) git常用命令:gitclonegitaddgitcommitgitcheckoutgitpushgitpull 分支:master/main:主分支dev:未经测试的分支dev_开发人员名称:各个开发人员的分支......
  • GitLab Flow浅记
    工作流Git三大特色,分支,暂存区,工作流何谓工作流    WorkFlow的字面意思,工作流,即工作流程。因为有分支的存在,才构成了多工作流的特色。事实的确如此,因为项目开发中,多人协作,分支很多,虽然各自在分支上互不干扰,但是我们总归需要把分支合并到一起,而且真实项目中涉及到很多问......
  • sqli-lab 15到18
    第15题发现不管输入什么都不报错应该是没有回显的,所以考虑时间盲注:先判断闭合方式:建议拿'、"、')、")、)、))、一个一个试:时间盲注应该这样试:uname=11&passwd=1'orsleep(4)---&submit=Submit这里注意,刚开始试了很多次全都没有反应,查了一下,原来是考虑欠周:在ge......
  • MATLAB R2023a Mac(专业编程和数学计算软件)
    MATLABr2022b是一款功能强大的编程和数学计算工具,取用于处理科学、工程和数学应用程序中的复杂数据,可用于科学研究、信号处理、计算机视觉,机器学习,人工智能以及相关软件领域。适用范围:MATLAB是一款功能强大的编程工具,可以帮助您完成科学、工程或数学应用程序的开发工作。在您进......
  • 基于压缩感知和KSVD的图像去噪算法matlab仿真
    1.算法仿真效果matlab2022a仿真结果如下:2.算法涉及理论知识概要K-SVD可以看做K-means的一种泛化形式,K-means算法总每个信号量只能用一个原子来近似表示,而K-SVD中每个信号是用多个原子的线性组合来表示的。K-SVD通过构建字典来对数据进行稀疏表示,经常用于图像压缩、编码、分类等......
  • 基于DNN网络的信道估计matlab仿真,仿真输出信道估计值的mse指标
    1.算法仿真效果matlab2022a仿真结果如下:    2.算法涉及理论知识概要       在信道变化迅速的系统中,通常依靠频域的导频子载波进行信道估计。导频子载波按照特定的规则插入到时频两维资源中。导频子载波处的信道响应可以通过最小二乘法(least-square,ls)和线性......
  • gitlab--不同的 stage 不重新下载代码、GIT_CHECKOUT、制品 artifacts
    介绍在gitlabci中,不同的stage都会重新下载代码,例如下面的.gitlab-ci.ymldefault:image:ruby:2.7.5stages:#运行的阶段顺序-build-test-deploybuild:#job的名称stage:build#阶段的名称script:-ls-l-echo123>test1.txt#......
  • 基于DNN网络的信道估计matlab仿真,仿真输出信道估计值的mse指标
    1.算法仿真效果matlab2022a仿真结果如下:2.算法涉及理论知识概要在信道变化迅速的系统中,通常依靠频域的导频子载波进行信道估计。导频子载波按照特定的规则插入到时频两维资源中。导频子载波处的信道响应可以通过最小二乘法(least-square,ls)和线性最小均方误差法(linearminimumm......
  • MATLAB模糊C均值聚类FCM改进的推荐系统协同过滤算法分析MovieLens电影数据集
    全文链接:http://tecdat.cn/?p=32594原文出处:拓端数据部落公众号在当今信息爆炸的时代,电影作为人们生活中不可或缺的娱乐方式,受到了越来越多的关注。而为了让观众能够更好地选择适合自己口味的电影,推荐系统成为了一个备受关注的研究领域。协同过滤算法是其中一种被广泛使用的方法......