jupyterlab部署到docker
操作环境:mac OS 10.14.6
docker版本:10.03.1
终端:iterm2 3.3
时间:2019年8月
::说明::jupyter没有提供单独的jupyterlab镜像,可以使用jupyter/all-spark-notebook镜像进行操作
下载镜像:
$ docker pull jupyter/all-spark-notebook # 使用默认latest标签
镜像大小docker hub上大概在2GB左右, 本地解压需要5GB左右

当然可能有镜像层复用的情况,实际可能没有5G
运行:
$ docker run --rm -p 8888:8888 -p 4040:4040 --name jupyter -e JUPYTER_ENABLE_LAB=yes -v ~/program/jupyter:/home/jovyan/ jupyter/all-spark-notebook
::说明::
--rm: 退出后删除容器, 数据保存到宿主机, 每次重启都是一个干净的容器
-p 8888:8888: 映射web端口;
-p 4040:4040: 映射spark UI端口;
--name jupyter: 设置运行后容器名称为jupyter,方便后续操作;
-e JUPYTER_ENABLE_LAB=yes: 设置变量;
-v ~/program/jupyter:/home/jovyan/: 将本地目录映射到容器中,本地目录:~/program/jupyter, 容器目录: /home/jovyan/;
命令执行完成后,复制红色部分到浏览器访问jupyter


停止
# 新开终端
$ docker stop jupyter
设置别名,让操作稍微简单点
$ sudo vim ~/.zshrc # 使用vim打开zsh配置文件
# .zshrc文件末尾新增内容
alias run_jupyter='docker run -d --rm -p 8888:8888 -p 4040:4040 --name jupyter -e JUPYTER_ENABLE_LAB=yes -v ~/program/jupyter:/home/jovyan/ jupyter/all-spark-notebook && sleep 5s && docker exec -it jupyter jupyter notebook list'
alias stop_jupyter='docker stop jupyter'
alias jupyter_list="docker exec -it jupyter jupyter notebook list"
# 退出vim后执行命令
$ source ~/.zshrc
::说明::
首先,对jupyter运行命令进行了修改,
1. 添加了后台运行参数 -d, 切换至后台导致出现没法获取URL,于是在运行完docker后新增了两个命令
2. sleep 5s 等待5s,让jupyter启动完成,
3. docker exec -it jupyter jupyter notebook list 显示访问URL, 显示的URL需要进行修改
然后,添加停止容器jupyter
最后,添加一个单独的获取URL的命令,同样需要修改URL

以后的操作就简单了, 启动容器:run_jupyter, 停止容器:stop_jupyter, 显示访问地址: jupyter_list
参考地址:
Running local Jupyter (and JupyterLab) env with Docker
jupyterlab部署到docker的更多相关文章
- 使用Docker构建持续集成与自动部署的Docker集群
为什么使用Docker " 从我个人使用的角度讲的话 部署来的更方便 只要构建过一次环境 推送到镜像仓库 迁移起来也是分分钟的事情 虚拟化让集群的管理和控制部署都更方便 hub.docke ...
- docker:(5)利用docker -v 和 Publish over SSH插件实现war包自动部署到docker
在 docker:(3)docker容器挂载宿主主机目录 中介绍了运行docker时的一个重要命令 -v sudo docker run -p : --name tomcat_xiao_volume ...
- Ubuntu16.04 部署安装Docker容器 & 注意事项
一.部署安装Docker容器 1.1 Ubuntu下安装 crul sudo apt install curl curl是利用URL语法在命令行方式下工作的开源文件传输工具.它被广泛应用在Unix.多 ...
- 把ABP框架部署到Docker中
本文旨在将Abp项目部署到Docker容器中,借助Gitee存储,Jenkins持续构建,利用Docker Compose生成镜像.启动镜像,在官网给定的Abp项目中,虽然用到了Dockerfile. ...
- .net4.5部署到docker容器
.net4.5部署到docker容器 部署到windows容器 部署到linux容器 部署到windows容器 由于.net本身就是运行在windows平台的,所以它与windows容器也是更加适合, ...
- aspnetcore2.1 部署到docker (访问出现404)
Dockerfile FROM microsoft/dotnet:2.1-aspnetcore-runtime WORKDIR /app COPY ./publish . ENTRYPOINT [&q ...
- .net core Ocelot实现API网关并部署在docker中
基于Ocelot(http://ocelot.readthedocs.io)搭建的API网关demo 软件以及系统版本: Asp.Net Core 2.2 Ocelot 13.5.0 CentOS ...
- 容器部署解决方案Docker
容器部署解决方案Docker 课程目标 目标1:了解Docker与虚拟机的不同点,相比的优势 目标2:掌握Docker的启动方法 目标3:掌握Docker镜像操作 目标4:掌握Docker容器操作 ...
- Asp.Net Core使用System.Drawing.Common部署到docker报错问题
Asp.Net Core 2.1发布后,正式支持System.Drawing.Common绘图了,可以用来做一些图片验证码之类的功能.但是把网站部署到docker容器里运行会遇到很多问题,也是非常闹心 ...
随机推荐
- 大数据结构设计V1.0
- Codeforces Round #590 (Div. 3) B2. Social Network (hard version)
链接: https://codeforces.com/contest/1234/problem/B2 题意: The only difference between easy and hard ver ...
- SpringBoot——》WebMvcConfigurerAdapter详解
一.WebMvcConfigurerAdapter是什么二.WebMvcConfigurerAdapter常用的方法1.addInterceptors:拦截器2.addCorsMappings:跨域3 ...
- 题解 [CF332C] Students' Revenge
题面 解析 辣鸡题面毁我青春 因为翻译的题面中写了一句\(剩下的n−k个不会完成\). 所以就以为剩下的\(n-k\)个都会算上不满意值. (然而事实是只有\(p-k\)个...) 首先根据主席的规则 ...
- 题解 [CF916E] Jamie and Tree
题面 解析 这题考试时刚了四个小时. 结果还是爆零了 主要就是因为\(lca\)找伪了. 我们先考虑没有操作1,那就是裸的线段树. 在换了根以后,主要就是\(lca\)不好找(分类讨论伪了). 我们将 ...
- C# 父类代码动态转换子类
百度上搜索C# 如何父类运行时转换成子类,没有得到相应答案,突然想起C# 有dynamic类型试试看结果成功了... 以后编写代码类似这样的代码 就可以删减掉了 if (en.type == EMap ...
- nohup 的含义
)./a.sh &,&对SIGINT 信号免疫程序终止(interrupt)信号, 在用户键入INTR字符(通常是Ctrl-C)时发出,用于通知前台进程组终止进程.Ctrl + C,a ...
- JavaWeb_(Mybatis框架)Mapper动态代理开发_三
系列博文: JavaWeb_(Mybatis框架)JDBC操作数据库和Mybatis框架操作数据库区别_一 传送门 JavaWeb_(Mybatis框架)使用Mybatis对表进行增.删.改.查操作_ ...
- JavaWeb_(Spring框架)SpringAOP面向切面编程
SpringAOP:面向切面编程(面向fifter编程) 通俗易懂术语:所有纵向重复的代码,我们提取成横向的代码 以下文章内容参考知乎:从0带你学习SpringAOP,彻底的理解AOP思想 传送门 1 ...
- hibernate持久化类中,修改字符串长度时,注意的问题
在使用hibernate注解修饰字符串长度时,如果一开始没有把String类型的变量长度设计好,在网数据库插入数据时,容易造成字段长度超出错误,这时候需要修改@Column里length的大小.如果使 ...