说明

由于官方镜像实在是不怎么好用,所以我自己做了一个优化过的jupyter notebook的镜像 notebook_hub,使用我这个镜像搭建容器非常简单,下面就基于这个notebook_hub来进行搭建。

关于notebook_hub

这个是我自己自己基于Ubuntu镜像制作的jupyter notebook的镜像。

我自己做了以下优化:

  • 优化终端对中文字体的显示。
  • 优化jupyter notebook的UI显示。
  • 优化jupyter notebook对中文的支持。
  • 优化了jupyter notebook的字体的显示。
  • 优化了部分包对中文字体的显示乱码问题。
  • 为jupyter notebook添加了Nbextensions功能增强插件。
  • 为jupyter notebook整合了python3和R的内核支持。
  • 为jupyterlab添加 git github jupyterlab-lsp jupyterlab-drawio 等插件。

项目地址 https://github.com/brokyz/notebook_hub

Docker地址 https://hub.docker.com/r/brokyz/notebook_hub

搭建步骤

  1. 拉取镜像
# 需要jupyterlab自带python和R的使用这个镜像
docker pull brokyz/notebook_hub # 需要jupyter notebook自带python和R的使用这个镜像
docker pull brokyz/notebook_hub:stable_v1 # 只需要带有python的jupyterlab使用这个镜像
docker pull brokyz/notebook_py # 只需要带有pythom的jupyter notebook使用这个镜像
docker pull brokyz/notebook_py:stable_v1
  1. 搭建容器
# 将下面的的name和使用的镜像改为自己上一步拉取的镜像版本。
docker run -d -p 8888:8888 --name notebook_hub --restart always brokyz/notebook:hub

-p 8888:8888 为指定端口号外部端口为8889 容器内部端口为8888,根据自己的需要自行修改外部端口。比如在服务器上安装了宝塔面板8888端口被占用,那么只需要改成8889:8888即可,之后便会通过ip:8889端口进行访问。

  1. 获取登录token
# 使用命令查看日志中的token并复制 这里需要使用构建容器时指定的name
docker logs notebook_hub # 结果如下,复制token为 1294c0bfc1513e9f2250df2ad52d40eb40b1ab678341e563
--------------------------------------------------------------------------------------------------------------------------------------------------
To access the notebook, open this file in a browser:
file:///root/.local/share/jupyter/runtime/nbserver-8-open.html
Or copy and paste one of these URLs:
http://b1c5c1eb1901:8888/?token=1294c0bfc1513e9f2250df2ad52d40eb40b1ab678341e563
or http://127.0.0.1:8888/?token=1294c0bfc1513e9f2250df2ad52d40eb40b1ab678341e563
  1. 网页访问

在浏览器输入 ip:端口号 进行访问,比如我这里 就是输入 ip:8888,如果在第2步修改成-p 8889:8888的话,那么就是通过ip:8889进行访问。

在进入的网页的下面粘贴自己的token和设置自己的访问密码。访问密码需要重启容器后才有效。

  1. 重启容器
# 重启容器使密码生效 这里需要使用构建容器时指定的name
docker restart notebook_hub

使用docker搭建jupyter notebook / jupyterlab的更多相关文章

  1. Docker 安装jupyter notebook

    1. 利用image运行一个container sudo docker run -it --net=host tingting --net=host:让container可以上网,安装原来的sudo ...

  2. 搭建Jupyter Notebook服务器

    昨天发了Jupyter的使用,补一篇Jupyter服务器的搭建~ 一.搭建Jupyter 1.安装 使用virtualenv建虚拟环境.在虚拟环境中安装jupyter.matplotlib等等需要的库 ...

  3. 使用centos linux vps搭建jupyter notebook踩坑日记

    今天我尝试用vps搭建在线jupyter notebook网站时遇到了这样一个问题: [W 21:48:07.243 NotebookApp] SSL Error on 9 ('171.115.101 ...

  4. Python - 搭建Jupyter notebook环境

    1- Jupyter简介 HomePage:https://jupyter.org/ 安装指南:https://jupyter.org/install.html 官方文档:https://jupyte ...

  5. 在服务器搭建Jupyter notebook

    安装 Jupyter Notebook (这里虽然是对centos和Python2的,但是在Ubuntu16.04,Python3同样可以照着弄) Jupyter Notebook 简介 Jupyte ...

  6. vps上搭建jupyter notebook远程服务

    安装anaconda 使用如下命令下载: wget https://repo.continuum.io/archive/Anaconda3-5.0.0.1-Linux-x86_64.sh 如果非roo ...

  7. 在树莓派上搭建jupyter notebook server

    自从搬家后,树莓派闲置了好一段时间,最近打算将其利用起来.想来想去,搭个jupyter notebook用要靠谱的,毕竟经常要实验一些Python脚本. 具体过程参考以下链接: https://www ...

  8. 【机器学习 Azure Machine Learning】使用Aure虚拟机搭建Jupyter notebook环境,为Machine Learning做准备(Ubuntu 18.04,Linux)

    问题描述 在Azure的VM中已经安装好Jupyter,并且通过jupyter notebook --port 9999 已经启动,但是通过本机浏览器,访问VM的公网IP,则始终是不能访问的错误.(T ...

  9. 服务器上搭建jupyter notebook

    参考:https://zhuanlan.zhihu.com/p/44405596 https://blog.csdn.net/cvMat/article/details/79351420 遇到的问题 ...

随机推荐

  1. 大数据学习之路之ambari的安装

    之前按照正常方式安装的hbase不能插入数据 所以今天来尝试下ambari能不能行 已经打了快照 如果不能还能恢复之前的样子

  2. MySQL数据库设置编码格式和时区

    MySQL数据库设置编码格式和时区 MySQL5版本: url=jdbc:mysql://localhost:3306/test?characterEncoding=utf-8 MySQL6版本及以上 ...

  3. Spring原始注解开发-02

    使用@Repository.@Service.@Controller注解配置,使其更加清晰属于哪一层,因为我是模拟的web层,所有没有使用@Controller注解,后面结合web开发会使用到 1.创 ...

  4. k8s pod故障分类与排查

    一.Pod故障状态基本有几种Pod状态 处于PendingPod状态 处于WaitingPod状态 处于ContainerCreatingPod状态 ImagePullBackOffPod状态 Cra ...

  5. 五分钟搭建博客系统 OK?

    前言: 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i 概要: 通过 Docker Compose 在使用Docker容器构建的隔离环境中轻松运行 WordPress.在开始之前,请确保已安 ...

  6. Python 国家地震台网中心地震数据集完整分析、pyecharts、plotly,分析强震次数、震级分布、震级震源关系、发生位置、发生时段、最大震级、平均震级

    注意,本篇内容根据我老师布置的数据分析作业展开.请勿抄袭,后果自负! 前情提要 编写这篇文章是为了记录自己是如何分析地震数据集,使用模块,克服一系列 \(bug\) 的过程.如果你是 \(python ...

  7. OA办公软件篇(二)—权限管理

    权限管理的背景 权限管理的作用 迭代历程 关键名词释义 权限管理模型 具体实现 写在最后   权限管理的背景 在OA办公软件篇(一)-组织架构一文中,我们说到组织架构是软件系统的权限体系的重要搭建依据 ...

  8. GET sql注入

    靶机地址:192.168.43.156 攻击机地址:192.168.43.89 一.AppScan检查靶机sql漏洞 二.使用sqlmap利用SQL注入漏洞 1.sqlmap -u " ht ...

  9. MySQL 视图简介

    概述 数据库中关于数据的查询有时非常复杂,例如表连接.子查询等,这种查询编写难度大,很容易出错.另外,在具体操作表时,有时候要求只能操作部分字段. 为了提高复杂 SQL 语句的复用性和表的操作的安全性 ...

  10. python基础练习题(题目 模仿静态变量的用法)

    day27 --------------------------------------------------------------- 实例041:类的方法与变量 题目 模仿静态变量的用法. 程序 ...