Docker 安装配置 Jupyter Notebook
概览
在之前的文章《Jupyter notebook》中,我们已经介绍了Jupyter的基础使用方法。本文将指导您如何使用Docker来安装Jupyter,并设置访问密码。
确保在开始之前,您已经按照《Docker入门》安装并配置好了Docker环境。本例中Docker宿主机的IP为 192.168.56.130。
安装 Jupyter
步骤1: 查找镜像
登录Docker Hub并查找Jupyter的官方镜像。
步骤2: 下载镜像
下载您需要的Jupyter镜像版本(此处以 notebook-5.7.8 为例):
docker pull jupyter/base-notebook:notebook-5.7.8注意: 避免使用 6.x.x 版本,因为它有个已知的扩展插件显示问题,详情请查阅Jupyter nbextensions_configurator not shown。
步骤3: 创建配置目录
设置Jupyter的工作目录:
mkdir -p /opt/jupyter/jovyan mkdir -p /opt/jupyter/jovyan/.jupyter chmod 777 -R /opt/jupyter/jovyan步骤4: 启动 Jupyter 服务
运行以下命令启动Jupyter容器:
docker run --name vk-jupyter -d \ -p 8888:8888 \ -v /opt/jupyter/jovyan:/home/jovyan \ jupyter/base-notebook:notebook-5.7.8此命令会执行以下操作:
将容器命名为
vk-jupyter并在后台运行。将宿主机的
8888端口映射到容器的8888端口。将宿主机的
/opt/jupyter/jovyan目录挂载到容器的/home/jovyan目录。
更多参数和配置可以参考Jupyter Docker Stacks官方文档。
步骤5: 验证安装
运行 docker ps,如果看到 vk-jupyter 容器正在运行,说明Jupyter启动正常。
通过浏览器访问 http://192.168.56.130:8888,您应该可以看到Jupyter的登录页面。
步骤6: 登录
执行以下命令以获取登录所需的token:
docker exec -it vk-jupyter jupyter notebook list使用此token,您就可以登录Jupyter并开始编辑。
配置 Jupyter
设置密码
为了设置密码,请运行:
docker exec -it vk-jupyter jupyter notebook password docker restart vk-jupyter重新启动后,您可以使用设置的密码登录。
根目录
Jupyter的默认根目录是 /home/jovyan,对应宿主机的 /opt/jupyter/jovyan。所有创建的目录和文件都将保存在此路径下。
安装ipywidgets
若不安装 ipywidgets,在加载 /nbextensions/widgets/notebook/js/extension.js 文件时可能会报 404 错误。
docker exec -it vk-jupyter pip install ipywidgets配置 Nginx
为了支持Jupyter使用的websocket协议,需要配置Nginx来支持此协议:
server {
listen 80;
server_name jupyter.voidking.com;
charset utf-8;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://172.17.12.85:8888;
# WebSocket support
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
执行 bash 命令
在代码框里输入 ! 加上bash命令,例如 !ls -l,即可执行。
登录进容器
docker exec -it vk-jupyter /bin/bash
docker exec --user root -it vk-jupyter /bin/bash安装常用软件
docker exec --user root -it vk-jupyter /bin/bash
apt update
apt install curl
apt install unzip安装 Jupyter Notebook 扩展
Jupyter Notebook 的扩展可以增强其功能:
docker exec -it vk-jupyter conda install -c conda-forge jupyter_nbextensions_configurator
# 或使用国内镜像加速
docker exec -it vk-jupyter pip install jupyter_nbextensions_configurator -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple docker exec -it vk-jupyter jupyter nbextensions_configurator enable --user docker exec -it vk-jupyter jupyter nbextension list docker restart vk-jupyter
安装常用扩展集合
描述安装常用扩展集合的步骤。
docker exec -it vk-jupyter pip install jupyter_contrib_nbextensions -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/
#docker exec -it vk-jupyter conda install -c conda-forge jupyter_contrib_nbextensionsdocker exec -it vk-jupyter jupyter contrib nbextension install --userdocker exec -it vk-jupyter jupyter nbextension list