如何用Docker安装配置Jupyter Notebook或JupyterLab?

2026-05-22 09:122阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计639个文字,预计阅读时间需要3分钟。

如何用Docker安装配置Jupyter Notebook或JupyterLab?

说明:由于官方镜像实际使用并不理想,我自制了一个优化的Jupyter Notebook镜像——notebook_hub。使用这个镜像搭建容器非常简单,下面基于notebook_hub进行搭建。

说明

由于官方镜像实在是不怎么好用,所以我自己做了一个优化过的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 等插件。

项目地址 github.com/brokyz/notebook_hub

Docker地址 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: b1c5c1eb1901:8888/?token=1294c0bfc1513e9f2250df2ad52d40eb40b1ab678341e563 or 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?

本文共计639个文字,预计阅读时间需要3分钟。

如何用Docker安装配置Jupyter Notebook或JupyterLab?

说明:由于官方镜像实际使用并不理想,我自制了一个优化的Jupyter Notebook镜像——notebook_hub。使用这个镜像搭建容器非常简单,下面基于notebook_hub进行搭建。

说明

由于官方镜像实在是不怎么好用,所以我自己做了一个优化过的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 等插件。

项目地址 github.com/brokyz/notebook_hub

Docker地址 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: b1c5c1eb1901:8888/?token=1294c0bfc1513e9f2250df2ad52d40eb40b1ab678341e563 or 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?