当前位置: 首页 > news >正文

docker部署jupyter

文章目录

    • 1.搜索镜像
    • 2.拉取镜像
    • 3.创建挂载
    • 4.运行容器
    • 4.查看容器运行运行状态
    • 5.token查看
    • 6.访问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
在这里插入图片描述

http://www.lryc.cn/news/254152.html

相关文章:

  • 音视频的功耗优化
  • Python实现FA萤火虫优化算法优化XGBoost回归模型(XGBRegressor算法)项目实战
  • SCAUoj综合性实验
  • 智加科技获全国首张重卡无人驾驶开放道路测试牌照
  • LLM大语言模型(一):ChatGLM3-6B本地部署
  • chatgpt prompt提示词
  • 【PyTorch】数据集
  • oops-framework框架 之 本地存储(五)
  • 编程常见的问题
  • 针对Arrays.asList的坑,可以有哪些处理措施
  • SE考研真题总结(一)
  • Xshell远程登录AWS EC2 Linux实例
  • Elasticsearch:对时间序列数据流进行降采样(downsampling)
  • python自动化测试框架:unittest测试用例编写及执行
  • ctfhub技能树_web_web前置技能_HTTP
  • mysql8报sql_mode=only_full_group_by(存储过程一直报)
  • Vue2中v-html引发的安全问题
  • java内部类详解
  • Python 潮流周刊#29:Rust 会比 Python 慢?!
  • 吴恩达《机器学习》11-1-11-2:首先要做什么、误差分析
  • Pandas在Excel同一个sheet里插入多个Dataframe和行
  • 查看mysql 或SQL server 的连接数,mysql超时、最大连接数配置
  • C++学习之路(七)C++ 实现简单的Qt界面(消息弹框、按钮点击事件监听)- 示例代码拆分讲解
  • python实现一个计算器
  • C++ 共享内存ShellCode跨进程传输
  • 如何快速移植(从STM32F103到STM32F407)
  • python高级练习题库实验1(B)部分
  • Qt Rsa 加解密方法使用(pkcs1, pkcs8, 以及文件存储和内存存储密钥)
  • 区分物理端口与软件端口概念:以交换机端口和Linux系统中的端口为例
  • 力扣226:翻转二叉树