操作环境: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的更多相关文章

  1. 使用Docker构建持续集成与自动部署的Docker集群

    为什么使用Docker " 从我个人使用的角度讲的话  部署来的更方便 只要构建过一次环境 推送到镜像仓库 迁移起来也是分分钟的事情 虚拟化让集群的管理和控制部署都更方便 hub.docke ...

  2. docker:(5)利用docker -v 和 Publish over SSH插件实现war包自动部署到docker

    在 docker:(3)docker容器挂载宿主主机目录 中介绍了运行docker时的一个重要命令 -v sudo docker run -p : --name tomcat_xiao_volume ...

  3. Ubuntu16.04 部署安装Docker容器 & 注意事项

    一.部署安装Docker容器 1.1 Ubuntu下安装 crul sudo apt install curl curl是利用URL语法在命令行方式下工作的开源文件传输工具.它被广泛应用在Unix.多 ...

  4. 把ABP框架部署到Docker中

    本文旨在将Abp项目部署到Docker容器中,借助Gitee存储,Jenkins持续构建,利用Docker Compose生成镜像.启动镜像,在官网给定的Abp项目中,虽然用到了Dockerfile. ...

  5. .net4.5部署到docker容器

    .net4.5部署到docker容器 部署到windows容器 部署到linux容器 部署到windows容器 由于.net本身就是运行在windows平台的,所以它与windows容器也是更加适合, ...

  6. aspnetcore2.1 部署到docker (访问出现404)

    Dockerfile FROM microsoft/dotnet:2.1-aspnetcore-runtime WORKDIR /app COPY ./publish . ENTRYPOINT [&q ...

  7. .net core Ocelot实现API网关并部署在docker中

    基于Ocelot(http://ocelot.readthedocs.io)搭建的API网关demo 软件以及系统版本:  Asp.Net Core 2.2 Ocelot 13.5.0 CentOS ...

  8. 容器部署解决方案Docker

      容器部署解决方案Docker 课程目标 目标1:了解Docker与虚拟机的不同点,相比的优势 目标2:掌握Docker的启动方法 目标3:掌握Docker镜像操作 目标4:掌握Docker容器操作 ...

  9. Asp.Net Core使用System.Drawing.Common部署到docker报错问题

    Asp.Net Core 2.1发布后,正式支持System.Drawing.Common绘图了,可以用来做一些图片验证码之类的功能.但是把网站部署到docker容器里运行会遇到很多问题,也是非常闹心 ...

随机推荐

  1. Chef and Problems(from Code-Chef FNCS) ( 回 滚 )

    题目: 题意:给定序列,求[l,r]区间内数字相同的数的最远距离. 链接:https://www.codechef.com/problems/QCHEF #include<bits/stdc++ ...

  2. [Luogu] 树

    https://www.luogu.org/problemnew/show/P4092 树剖 + 线段树区间修改,单点查询 #include <bits/stdc++.h> using n ...

  3. 简易的学生成绩管理系统(C++实现)

    最近浅显的学习了C++的基础知识,想来练练手,于是就用单链表写了最经典的小项目,存粹学习,所以就在控制台下写了,写的有点简陋,码了大概400多行. 下面上代码: #include <cstdli ...

  4. 2017 ZSTU寒假排位赛 #4

    题目链接:https://vjudge.net/contest/148543#overview. A题:n个罪犯,每个人有一个犯罪值,现在要从里面选出连续的c个人,每个人的犯罪值都不能超过t,问选法的 ...

  5. $\LaTeX$数学公式大全

    $\LaTeX$数学公式大全$1\ Geek\ and\ Hebrew\ letters$ $\LaTeX$数学公式大全$2\ Math\ Constructs$ $\LaTeX$数学公式大全$3\ ...

  6. Tomcat的server.xml

    慕课网:https://www.imooc.com/video/19201 Server:指整个tomcat服务器,它其中包含多个组件,它主要负责管理和启动各个service,同时监听8005端发过来 ...

  7. macos npm + node 环境启动问题排查

    MacOS安装npm全局包的权限问题 解决办法:修改npm包所安装目录的权限:sudo chown -R $USER /usr/local   然后输入密码就可以了 deMBP:~ $ sudo ch ...

  8. ElasticSearch2:集群安装

    0.Linux系统参数设置 Linux进程数系统限制查看 [root@ip101 config]# sysctl kernel.pid_max kernel.pid_max = 131072 [roo ...

  9. Linux系统是否被植入木马的排查流程梳理

    在日常繁琐的运维工作中,对linux服务器进行安全检查是一个非常重要的环节.今天,分享一下如何检查linux系统是否遭受了入侵? 一.是否入侵检查 1)检查系统日志 1 2 检查系统错误登陆日志,统计 ...

  10. Qt应用Redis实现消息队列

      版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/liulihuo_gyh/article/details/78425763 类似BS模式,客户端发 ...