docker部署jupyter

文章目录

1.搜索镜像

docker search jupyter: 命令用于在 Docker Hub 上搜索名为 "jupyter" 的镜像。搜索结果显示了一个名为 "jupyter/datascience-notebook" 的镜像,它是一个包含了数据科学 Jupyter 笔记本的 Python 栈。

root@Could:/volume1/docker/jupyter# docker search jupyter
NAME                                 DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
jupyter/datascience-notebook         Data Science Jupyter Notebook Python Stack f...   1057    

....省略n个镜像

2.拉取镜像

docker pull jupyter/datascience-notebook:命令用于从 Docker Hub 下载 "jupyter/datascience-notebook" 镜像。

docker pull  jupyter/datascience-notebook

3.创建挂载

mkdir -p /volume1/docker/jupyter/notebook: 命令用于创建一个目录,即 /volume1/docker/jupyter/notebook,用于在主机和容器之间共享 Jupyter 笔记本文件。可以将的 Jupyter 笔记本文件放在这个目录中,以便在容器中进行访问和编辑。

#创建挂载目录
mkdir -p /volume1/docker/jupyter/notebook

4.运行容器

两个选项都可以生成jupyter,看个人需求:

(1)生成token,修改jupyter密码

#运行容器
docker run -itd \
--name jupyter \
-p 8888:8888 \
-e "GRANT_SUDO=yes" \
-v /volume1/docker/jupyter/notebook:/home/notebook/data \
jupyter/datascience-notebook

(2)生成无访问密码jupyter的容器

docker run -itd \
--name jupyter \
-p 8888:8888 \
-v /volume1/docker/jupyter/notebook:/home/notebook/data \
-e "JUPYTER_ENABLE_LAB=yes" \
-e "NB_USER=user" \
-e "NB_UID=1000" \
-e "GRANT_SUDO=yes" \
jupyter/datascience-notebook start-notebook.sh --NotebookApp.token=''
  • docker run -itd: 这是运行 Docker 容器的命令。-itd 参数将容器运行在后台,并将标准输入连接到 TTY(终端)。
  • --name jupyter: 通过这个选项,为容器指定了一个名称,即 "jupyter"。
  • -p 8888:8888: 这个选项将容器内部的端口 8888 映射到宿主机的端口 8888,以便可以通过 localhost:8888 访问 Jupyter。
  • -v /volume1/docker/jupyter/notebook:/home/notebook/data: 这个选项将宿主机的目录 /volume1/docker/jupyter/notebook 挂载到容器内的 /home/notebook/data 目录,以便可以在 Jupyter 中访问宿主机上的数据。
  • -e "JUPYTER_ENABLE_LAB=yes": 这个选项设置 Jupyter 启用 JupyterLab 界面。
  • -e "NB_USER=user": 这个选项设置 Jupyter 使用用户名 "user"。
  • -e "NB_UID=1000": 这个选项设置 Jupyter 使用用户 ID 为 1000。
  • -e "GRANT_SUDO=yes": 这个选项允许 Jupyter 用户拥有管理员权限。
  • jupyter/datascience-notebook: 这是要使用的 Docker 镜像的名称,即 Jupyter 数据科学笔记本镜像。
  • start-notebook.sh --NotebookApp.token='': 这是在容器内部运行的命令。start-notebook.sh 脚本会启动 Jupyter 服务器,并使用空的访问令牌,即无密码访问模式。

通过运行上述命令,将启动一个名为 "jupyter" 的容器,并以无密码访问模式启动 Jupyter。可以在浏览器中访问 IP:8888 来使用 Jupyter 笔记本。

4.查看容器运行运行状态

docker ps命令,用于查看运行的 Jupyter 数据科学笔记本容器的详细信息如下:

root@Could:~# docker ps
CONTAINER ID   IMAGE                            COMMAND                  CREATED         STATUS                   PORTS                    NAMES
4cd0ddf5a966   jupyter/datascience-notebook     "tini -g -- start-no..."   4 minutes ago   Up 4 minutes (healthy)   0.0.0.0:8888->8888/tcp   jupyter
  • CONTAINER ID: 容器的唯一标识符,用于在 Docker 中标识容器。
  • IMAGE: 容器所使用的镜像名称,即 "jupyter/datascience-notebook"。
  • COMMAND: 容器启动时执行的命令。
  • CREATED: 容器的创建时间。
  • STATUS: 容器的状态。在这种情况下,容器的状态为 "Up",表示容器正在运行。
  • PORTS: 容器的端口映射配置。在这种情况下,容器的端口 8888 映射到主机的端口 8888。
  • NAMES: 容器的名称。

容器的名称为 "mystifying_shirley",它已经运行了大约 15 分钟,并且状态为 "Up",表示容器正常运行。

5.token查看

该命令使用Docker的日志功能来查看Jupyter容器的日志,并将日志内容追加到/tmp/jupyter.txt文件中。然后,使用grep命令来在文件中搜索包含"token"的行。

docker logs jupyter | cat >> /tmp/jupyter.txt 
cat  /tmp/jupyter.txt | grep token

#或者通过
docker logs jupyter | grep token

通过这个命令,可以查看Jupyter容器的日志,并搜索包含"token"的行,以找到Jupyter Notebook的访问令牌(token)。

复制token=xxx

9d38b2f29a6971f9abb8301da66de1073f57d627804200e

6.访问jupyter

http://192.168.31.100:8888/

通过token修改密码

登录jupyter主界面

写一个hello world

相关推荐
sam-12327 分钟前
k8s上部署redis高可用集群
redis·docker·k8s
Fanstay9851 小时前
在Linux中使用Nginx和Docker进行项目部署
linux·nginx·docker
ggaofeng2 小时前
通过命令学习k8s
云原生·容器·kubernetes
Chatopera 研发团队2 小时前
机器学习 - 为 Jupyter Notebook 安装新的 Kernel
人工智能·机器学习·jupyter
孤客网络科技工作室2 小时前
在 Jupyter Notebook 中使用 Matplotlib 进行交互式可视化的教程
ide·jupyter·matplotlib
death bell3 小时前
Docker基础概念
运维·docker·容器
天幕繁星4 小时前
docker desktop es windows解决vm.max_map_count [65530] is too low 问题
windows·elasticsearch·docker·docker desktop
想学习java初学者5 小时前
Docker Compose部署Kafka(非Zookeeper)
docker·容器·kafka
尝尝你的优乐美6 小时前
Docker部署Vue项目原来可以那么好用
前端·nginx·docker
qq_道可道6 小时前
K8S升级到1.24后,切换运行时导致 dind 构建镜像慢根因定位与解决
云原生·容器·kubernetes