基于docker-deepo安装定制化jupyterlab+ssh访问

Docker:使用 JupyterLab 进行数据科学 JupyterLab 是一个开源应用程序,围绕计算笔记本文档的概念构建。它支持代码共享与执行、数据处理和可视化,并提供一系列用于创建图表的交互功能。您可以使用 Docker 创建自己的 JupyterLab 环境并将其构建为镜像。通过构建自己的镜像,您可以使用所需的软件包和工具自定义 JupyterLab 环境,并确保其在不同部署中的一致性和可重现性。构建自己的镜像还使得与他人共享 JupyterLab 环境或将其用作进一步开发的基础更加容易。 阅读详情

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

本博客基于深度学习deepo镜像安装jupyterlab及其debugger、git插件,并使容器支持ssh远程访问。
提示:以下是本篇文章正文内容,下面案例可供参考

一、环境配置

该部分所有内容可参考:
Workstation Setup for Docker with the New NVIDIA Container Toolkit

1. docker安装

参考:Install Docker Engine on Ubuntu

为了支持docker run 的–gpus参数,需要安装 ≥ \ge ≥ 19的。本人安装的是 19.03.13

2. nvidia驱动安装

参考:
Ubuntu PPA安装NVIDIA-drivers

目前最新的deepo镜像中cuda版本为10.1,需要到nvidia驱动版本查询查询一下自己的显卡适配的驱动版本。
不建议采用PPA以外方式安装驱动,坑太多。

3. 安装NVIDIA Container Toolkit

distribution=$(. /etc/os-release;echo $ID$VERSION_ID)

curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -

curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list


sudo apt-get update

sudo apt-get install nvidia-container-toolkit


sudo systemctl restart docker

二、基于docker-deepo安装定制化jupyterlab

1. 目录结构

  • jupyterlab_deepo
    • Dockerfile
    • run.sh

2. Dockerfile

FROM ufoym/deepo:latest
RUN apt-get update && curl -sL https://deb.nodesource.com/setup_12.x | bash - && apt-get install -y nodejs
RUN apt-get update && apt-get install -y openssh-server curl
RUN mkdir -p /root/.ssh
RUN sed -ri 's/^PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config
RUN sed -ri 's/^#PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config
RUN echo "root:root" | chpasswd
RUN python -m pip install jupyterlab ipympl

# git extension
RUN jupyter labextension install  @jupyterlab/git @jupyterlab/debugger && pip install jupyterlab-git && jupyter serverextension enable --py jupyterlab_git
# debuger
RUN jupyter labextension install @jupyterlab/debugger && python -m pip install xeus-python ptvsd

ENV NOTEBOOK_APP_TOKEN=passwd NOTEBOOK_DIR=/home
EXPOSE 8888 22 6006
ADD run.sh /run.sh
RUN chmod 755 run.sh
#CMD jupyter lab --ip=0.0.0.0 --no-browser --allow-root --NotebookApp.token=${NOTEBOOK_APP_TOKEN} --notebook-dir=${NOTEBOOK_DIR}
CMD ["/run.sh"]

3. run.sh

#! /bin/bash
service ssh start
jupyter lab --ip=0.0.0.0 --no-browser --allow-root --NotebookApp.token=${NOTEBOOK_APP_TOKEN} --notebook-dir=${NOTEBOOK_DIR}

4. 镜像构建

docker build -t jupyterlab .build/

5. 启动容器

docker run --rm --gpus all -it -p 8848:8888 -p 2232:22 -v /home/jupyter_data:/home -e GRANT_SUDO=yes -e JUPYTER_ENABLE_LAB=yes --user root  --name gpu-jupyter_1 jupyterlab:latest 

其中/home/jupyter_data:/home为宿主机代码目录

6. 访问容器

  1. 远程ssh访问ssh root@ip -p 2232,密码root
  2. 浏览器访问ip:8848,密码:passwd
远程服务器docker配置并启动jupyter lab 阅读详情

相关推荐

docker 搭建 jupyter notebook远程环境

前言 之前的文章说了服务器怎么搭建jupyter环境:https://blog.youkuaiyun.com/Qwertyuiop2016/article/details/85137644 但是我发现,这样配置有点麻烦不说,换个机器又要重新来一遍,能不能来个一劳永逸的方法?那肯定是docker了 官方镜像 官方文档:https://jupyter-docker-stacks.readthedocs.io/en/latest/using/selecting.html 选择镜像 官方提供了几个镜像: jupyter/ba

Qwertyuiop2016的博客 1万+

【云驻共创】华为云AI之用Python定制我的《本草纲目女孩》

文章目录前言1.华为云ModelArs-Notebook1.1 Jupyter Notebook是什么1.2 JupyterLab是什么1.3 什么是Moxing2.Python-Opencv一、华为云AI之用Python定制我的“本草纲目女孩”1.案例实现流程2.案例实操2.1 本机环境2.2 安装对应的python包 前言 1.华为云ModelArs-Notebook ModelArts集成了基于开源的Jupyter Notebook和JupyterLab,可为您提供在线的交互式开发调试工具。您无需关

愚公智库 1万+

jupyter项目深度理解一

消息传递协议:定义了内核和客户端(Notebook)之间传递消息的格式。Execute :执行单个代码 cell。Execute Reply:执行结束后的结果反馈。Input :内核输入。Output: 内核输出。Stream:标准输出和标准错误等实时流。协议版本:定义了Jupyter支持的协议版本,目前主要有v4和v5两代。v5支持多窗口和分列等新特性。触发器:定义了何时触发消息传递,如当 cell 被执行时就触发 Execute 消息。

zhangzhechun的专栏 671

基于Jupyter Lab的Dash应用开发环境部署实践及问题解决

基于Jupyter Lab的Dash应用开发环境(Windows10)部署实践及问题解决,使用Jupyter Dash开源库,可以在Jupyter环境中,较容易以交互方式开发图表Dash应用程。

肖永威的专栏 5926

STM32 ST-LINK Utility固件烧录全流程详解与实战技巧

本文详细解析了使用STM32 ST-LINK Utility进行固件烧录的全流程与实战技巧。从硬件连接、软件安装、核心三步操作(连接、擦除、烧录)到进阶的选项字节配置与批量脚本烧录,提供了完整的避坑指南和问题排查方案,帮助开发者高效完成STM32程序下载。

lambda的博客 768

WPS Office 2019 For Linux二次开发全流程:从源码下载到Demo运行

本文详细介绍了在Linux环境下进行WPS Office 2019 C++二次开发的全流程,涵盖从开发环境准备、源码获取、核心依赖(Qt与WPS)安装配置,到最终编译运行官方Demo的完整步骤。文章重点解析了环境搭建中的常见问题与解决方案,旨在帮助开发者快速上手WPS二次开发。

weixin_29001423的博客 388

jupyter lab 代码提示/代码补全插件:jupyter lsp 配置教程 + 开启 Hinterland mode

jupyter lab 代码提示/代码补全插件:jupyter lsp 配置教程 + 开启 Hinterland mode

tp的博客 3491

数据产品需求文档(PRD)怎么写?阿里P8分享的模板+5个避坑点

作用:记录文档的版本、作者、评审信息,避免“文档混乱”。填写规范字段说明示例文档名称清晰反映产品名称,如“用户行为分析平台PRD”用户行为分析平台PRD_V1.0文档版本用“版本号+日期”,如V1.0_20240301编写人数据产品经理姓名+联系方式张三(138-XXXX-XXXX)评审人员业务负责人、开发经理、数据分析师、运维负责人李四(业务)、王五(开发)、赵六(数据)、周七(运维)评审时间评审日期2024-03-05评审意见。

架构师的AI之路,分享AI应用开发架构的学习与实践。 1573

JupyterLab 配置远程python、R环境(与Jupyter兼容)

​  官网如是介绍JupyterLab: JupyterLab is the next-generation web-based user interface for Project Jupyter。可见,Jupyter Lab是Jupyter的下一代计划,其包含了Jupyter Notebook所有功能,可作为一种基于web的集成开发环境,你可以使用它编写notebook、操作终端、编辑mark...

jeffery0207的博客 7938

关于HC32F460 输出可调占空比PWM波遇到的问题记录

文章目录问题记录一、问题分析二、解决方法总结 问题记录 芯片:HC32F460系列 功能:PWM电机调速 最近产品开发,需要用到HC32的PWM输出来控制电机的转速。参考官方的例程很快就完成了相关的功能,但是,后面在测试,重复开关电机的时候,发现电机的转速时大时小。 一、问题分析 一开始,怀疑是相关寄存器的设置出错导致的问题。因此在设置PWM输出时加上LOG打印,上机测试并没有发现问题。 用示波器抓取波形,这是正常状态下的波形(上电默认配置成5kHz,70%占空比输出) 这是转速较小时的波形输出 .

Top0_0lll的博客 6165

深入剖析:功率放大电路设计精髓——从理论到实践

输入信号首先被调制(通常是PWM脉宽调制)成高频开关信号,驱动功率开关管(MOSFET),再通过LC低通滤波器滤除高频分量,还原出放大的音频信号。在靠近功放板电源引脚处放置足够容量的电解电容(如100uF - 1000uF)和高频瓷片电容(如0.1uF)并联进行电源去耦,抑制低频和高频干扰,防止低频振荡(Motorboating)和高频自激。,堪称电子世界里的“能量转换器”。当输入信号在零附近(即两个器件切换导通的区域)时,由于器件的开启电压(Vbe或Vgs)不为零,输出波形会出现明显的衔接不流畅的失真。

Zihan2558的博客 1694

docker jupyterlab

启动jupyterlab服务 docker run -d \ -p 8888:8888 \ -e JUPYTER_ENABLE_LAB=yes \ -v /data/docker/jupyter:/opt/notebooks \ -v /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime \ -v /etc/timezone:/etc/timezone \ --restart=always \ --name myJupyterlab captainji/jup

Henry_Wu001的专栏 1123

电阻抗成像肺功能测试数据分析与直方图生成

本文介绍了基于MATLAB的电阻抗成像(EIT)肺功能测试数据分析方法。研究针对32×32像素的EIT图像序列,通过三步算法处理:首先计算特定时间点与谷值图像的差值,然后分析1秒后峰值与1秒值的差值,最终计算比值矩阵并处理异常值。系统展示了数据预处理、关键时间点检测、比值计算及统计分析的全流程,包括生成概率分布直方图和空间分布图等可视化方法。该分析为无创肺功能评估提供量化指标,可应用于临床呼吸监测和疾病诊断。

huanghm88的专栏 197

JupyterLab深度定制开发实践

Jupyterlab插件研发

szwx855的专栏 2216

Central Finance 全景解析:用 SAP S/4HANA 构建跨系统的财务中台与渐进式转型路径

Central Finance 是基于 SAP S/4HANA 的一种部署与应用场景:在不打断现有异构源系统运营的前提下,把多套 SAP 与非 SAP 系统中的财务与管理会计数据实时/准实时复制到一套中心化的 SAP S/4HANA 中,作为统一的记账与分析底座,逐步把选定的财务流程(如预算控制、付款、固定资产结账等)迁入中心系统。这让企业既能快速获得统一报表与统一核算结构,又为未来的整体迁移留出了弹性路径。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 390

数学之美:欣赏超越数e

文章目录一、e为何物?二、利息与e的关系1、利息问题2、计算利息3、欣赏螺旋线(1)螺旋线概述(2)绘制螺旋线三、e和π 一、e为何物? e是一个无限不循环小数,其值约等于2.718281828…,它是一个超越数,有时也称为欧拉数(Euler’s Number)。 以e为底的对数称为自然对数(Natural Logarithm),数学中使用自然这个词的还有自然数(Natural Number)。 这里的“自然”并不是现代人所习惯的“大自然”,而是有点儿“天然存在,非人为”的意思。 二、利息与e的关系

howard2005的专栏 1717

本地安装docker以及jupyterlab

参考文献https://www.cnblogs.com/jruing/p/15943834.html。#exit退出容器后可使用 docker commit 来提交容器副本生成我们的新镜像。#创建新容器(如果不需要自动启动,可将/start.sh换成/bin/bash)#停止容器(自动删除)

github_38929225的博客 1137

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

【干货】Jupyter Lab操作文档

在的 Notebook 中有两种模式,分别是编码模式(Edit mode)和命令模式(Command mode)。编码模式就是光标在 code 栏中闪烁时的模式,而命令模式就是点击 code 栏中括号后,code 栏变成灰色时的模式。在编码模式下可以通过按Esc键进入命令模式在命令模式下可以通过按Enter键进入编码模式。

未名编程 5432

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

【亲测免费】 Jupyter 主题定制工具:jupyter-themes 安装及使用教程

[jupyter-themes](https://github.com/dunovank/jupyter-themes.git) 是一个开源库,由 Kyle Dunovan 开发,允许用户自定义 Jupyter Notebook 的界面主题,包括字体、颜色、背景等。此项目提供了多种预设的主题,同时也支持自定义配置,让用户可以根据个人喜好调整界面风格。 ## 2. 项目快速启动 ### 安装 ...

gitblog_00351的博客 885

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

自定义Docker镜像--Jupyterlab

自定义Jupyterlab镜像

m0_59267075的博客 1179

使用docker搭建jupyter notebook/jupyterlab

使用docker搭建jupyter notebook / jupyterlab

brokyz 3066

本地docker搭建jupyter运行环境

source /root/anaconda3/bin/activate #注意选择自己的路径。Port 22 #指定好端口号,默认是22 后面这个数字要在你run容器的时候用到。PubkeyAuthentication yes #启用公钥私钥配对认证方式。创建容器时要先考虑好自己要开设几个端口,要提前指定好映射关系!PermitRootLogin yes #root能使用ssh登录。先进入ipython交互式环境生成秘钥。输入yes进入base环境。1、先进入到root目录。没有vim的话,先安装。

weixin_45620619的博客 1700

Dockerfile封装制作pytorch(tensorflow)深度学习框架 + jupyterlab服务 + ssh服务镜像

Dockerfile封装制作pytorch(tensorflow)深度学习框架 + jupyterlab服务 + ssh服务镜像

qq_41905051的博客 3803

docker中配置交互式的JupyterLab环境的问题

Could not determine jupyter lab build status without nodejs;Failed validating schema (@jupyterlab/apputils-extension:package):'^0.6.2' is not valid under any of the given schemas

Felier's Blog 1737

jupyter lab安装、配置教程

本人从docker中新拉取的miniconda镜像,从0开始安装。输入theme,或者推荐几个。

不撸先疯。 4343

统信uos20:利用docker部署python+jupyterlab开发环境

在统信UOS20系统上,利用docer搭建python+jupyter应用环境,并利用github action workflow构建docker镜像

liangma的专栏 1743
上一篇: Nvidia-NGC容器配置全过程+ssh配置+镜像定时备份
下一篇: 基于docker-compose和ngc cloud快速创建指定pytorch版本的jupyter-lab环境
Farm_Coder
博客等级 码龄10年 16粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值