使用docker搭建jupyter notebook / jupyterlab
说明
由于官方镜像实在是不怎么好用,所以我自己做了一个优化过的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
搭建步骤
- 拉取镜像
# 需要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
- 搭建容器
# 将下面的的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端口进行访问。
- 获取登录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
- 网页访问
在浏览器输入 ip:端口号 进行访问,比如我这里 就是输入 ip:8888,如果在第2步修改成-p 8889:8888的话,那么就是通过ip:8889进行访问。
在进入的网页的下面粘贴自己的token和设置自己的访问密码。访问密码需要重启容器后才有效。
- 重启容器
# 重启容器使密码生效 这里需要使用构建容器时指定的name
docker restart notebook_hub
使用docker搭建jupyter notebook / jupyterlab的更多相关文章
- Docker 安装jupyter notebook
1. 利用image运行一个container sudo docker run -it --net=host tingting --net=host:让container可以上网,安装原来的sudo ...
- 搭建Jupyter Notebook服务器
昨天发了Jupyter的使用,补一篇Jupyter服务器的搭建~ 一.搭建Jupyter 1.安装 使用virtualenv建虚拟环境.在虚拟环境中安装jupyter.matplotlib等等需要的库 ...
- 使用centos linux vps搭建jupyter notebook踩坑日记
今天我尝试用vps搭建在线jupyter notebook网站时遇到了这样一个问题: [W 21:48:07.243 NotebookApp] SSL Error on 9 ('171.115.101 ...
- Python - 搭建Jupyter notebook环境
1- Jupyter简介 HomePage:https://jupyter.org/ 安装指南:https://jupyter.org/install.html 官方文档:https://jupyte ...
- 在服务器搭建Jupyter notebook
安装 Jupyter Notebook (这里虽然是对centos和Python2的,但是在Ubuntu16.04,Python3同样可以照着弄) Jupyter Notebook 简介 Jupyte ...
- vps上搭建jupyter notebook远程服务
安装anaconda 使用如下命令下载: wget https://repo.continuum.io/archive/Anaconda3-5.0.0.1-Linux-x86_64.sh 如果非roo ...
- 在树莓派上搭建jupyter notebook server
自从搬家后,树莓派闲置了好一段时间,最近打算将其利用起来.想来想去,搭个jupyter notebook用要靠谱的,毕竟经常要实验一些Python脚本. 具体过程参考以下链接: https://www ...
- 【机器学习 Azure Machine Learning】使用Aure虚拟机搭建Jupyter notebook环境,为Machine Learning做准备(Ubuntu 18.04,Linux)
问题描述 在Azure的VM中已经安装好Jupyter,并且通过jupyter notebook --port 9999 已经启动,但是通过本机浏览器,访问VM的公网IP,则始终是不能访问的错误.(T ...
- 服务器上搭建jupyter notebook
参考:https://zhuanlan.zhihu.com/p/44405596 https://blog.csdn.net/cvMat/article/details/79351420 遇到的问题 ...
随机推荐
- 【每日日报】第三十二天---DataOutputStream写文件
1 今天继续看书 DataOutputStream写文件 1 package File; 2 import java.io.IOException; 3 import java.io.FileOutp ...
- Python爬虫报错:"HTTP Error 403: Forbidden"
错误原因:主要是由于该网站禁止爬虫导致的,可以在请求加上头信息,伪装成浏览器访问User-Agent. 新增user-agent信息: headers = {'User-Agent':'Mozilla ...
- idea怎么创建python项目
前言 python是一种功能强大和适用面很广的开发语言,在大数据应用和机器学习日益流行的年代,python凭借其简洁.易用和可扩展性获得很多用户的支持,近年来使用率高速增长.python环境下,集成了 ...
- 生成swap分区之利用磁盘分区
生成swap 分区方式很多,有利用磁盘分区来生成swap,这种效率比较高,他并不是文件系统, 另外我们还可以拿出磁盘一些空间,做成swap分区还有通过lvm逻辑卷的方式创建swap分区(这种分区就可以 ...
- Codeforeces 13B
计算几何二维基础
- 用于激光雷达的 APD,SPAD 和 SiPM 分析
1. 术语及定义 1.1 激光雷达,Light Detection And Range, LiDAR 发射激光光束,并接收回波以获取目标三维和/或速度信息的系统: 1.2 机械旋转激光雷达,Mech ...
- AcWing周赛44
周赛44 4317. 不同正整数的个数 link:https://www.acwing.com/problem/content/4320/ 我直接set #include <iostream&g ...
- PuddingSwap联合 ESBridge举办愚人节“币圈愚话”联合空投活动,完成任务即可获得惊喜奖励
据官方消息,4月1日0:00- 4月2日23:59,PuddingSwap联合 ESBridge举办"币圈愚话"空投活动,完成任务即可获得惊喜奖励. 此次PuddingSwap联合 ...
- (2020行人再识别综述)Person Re-Identification using Deep Learning Networks: A Systematic Review
目录 1.引言 2.研究方法 2.1本次综述的贡献 2.2综述方法 2.3与现有综述的比较 3.行人再识别基准数据集 3.1基于图像的再识别数据集 3.2基于视频的再识别数据集 4.基于图像的深度再识 ...
- selenium模块无头化浏览器 设置不加载页面css、图片、js
下面代码基于火狐浏览器,谷歌浏览器代码类似 from selenium import webdriver from selenium.webdriver.firefox.options import ...