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

在 Docker 中启动 Jupyter Notebook

文章目录

  • 一、创建容器
  • 二、Conda安装
  • 三、安装 Jupyter
  • 四、启动 Jupyter
  • 五、注册内核来使用虚拟环境
  • 小结

一、创建容器

  1. 可以先查看宿主机8888端口是否被占用,无输出,表明端口未被任何进程占用,如果有LISTEN,可能在创建容器的时候需要更换宿主机端口,例如 -p 8890:8888,这里以8890为例。

    netstat -tuln | grep 8888
    

    监听端口

  2. 关于容器的具体内容不过多介绍,在创建容器的时候注意要将宿主机的 8888 端口映射到容器的 8888 端口 (Jupyter 默认端口),如果宿主机8888端口被占用,那么需要修改宿主机映射的端口,比如-p 8890:8888

    docker run -it --name jupyter_container -p 8888:8888 镜像名:版本号 /bin/bash 
    
  3. 启动容器,准备创建虚拟环境。

    docker exec -it jupyter_container bash 
    

二、Conda安装

  1. 这里以miniconda为例,选择X86架构,通过wget获取安装脚本。

    wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
    
  2. 增加可执行权限。

    chmod +x Miniconda3-latest-Linux-x86_64.sh
    
  3. 运行安装脚本,根据提示yes/no,然后注意一下安装路径,按需修改,在最后一步输入no

    ./Miniconda3-latest-Linux-x86_64.sh
    
  4. 配置环境变量,打开~/.bashrc,在文件最后增加如下内容并将路径修改为刚才的安装路径之后source ~/.bashrc

    export PATH="/路径/miniconda3/bin:$PATH"
    
  5. 激活环境变量之后,执行conda init,然后重启docker即可。

    docker restart jupyter_container
    

三、安装 Jupyter

  1. 创建虚拟环境jupyter

    conda create -n jupyter python=3.9
    
  2. 激活虚拟环境。

    conda activate jupyter
    
  3. 因为我们使用的是miniconda,轻量版不自带jupyter,所以需要我们手动安装。

    pip install jupyter
    
  4. 如果没有jupyter lab,也可以手动安装。

    pip install jupyterlab
    

四、启动 Jupyter

  1. 启动 Jupyter ,需要增加如下参数:--ip=0.0.0.0:绑定所有网络接口,允许外部访问 (很重要) ; --port=8888:指定 Jupyter 监听的端口,与容器端口映射一致;容器中一般是 root 用户登录,--allow-root:允许以 root 用户运行,容器中一般也没有浏览器,--no-browser:防止 Jupyter 尝试打开浏览器。

    jupyter notebook --ip=0.0.0.0 --port=8888 --no-browser --allow-root xxxx.ipynb
    # 同理 jupyter lab --ip=0.0.0.0 --port=8888 --no-browser --allow-root xxxx.ipynb
    
  2. 启动后,选择任意一个链接在浏览器中打开即可。

    启动界面

  3. 如果在创建容器的时候,没有使用默认的端口映射,比如使用-p 8890:8888进行映射,在拷贝链接的时候需要在宿主机浏览器中将端口号修改为8890即可正常打开 jupyter 文件。
    在这里插入图片描述

  4. 浏览器中内容如下,使用jupyter lab也是同理,可以在指令后指定打开的具体目录。
    浏览器

  5. Jupyter 的汉化,使用如下指令安装汉化包之后,启动Jupyter,找到setting,然后选择language,选择中文,之后重启内核。

    pip install jupyterlab-language-pack-zh-CN
    

    汉化

五、注册内核来使用虚拟环境

  1. 安装ipykernel用于管理 Jupyter 内核。

    pip install ipykernel
    
  2. 注册jupyter(虚拟环境名)为 Jupyter 可用内核vienv(内核名,可变),之后启动 Jupyter 就可以使用注册后的虚拟环境(内核)运行cell

    python -m ipykernel install --user --name jupyter --display-name "vienv"
    
  3. 查看已注册的内核。

    jupyter kernelspec list
    
  4. 删除注册的内核。

    jupyter kernelspec uninstall 内核名称
    

小结

关于Docker以及Jupyter的详细操作这里不过多涉及,如有其他问题,欢迎在评论区讨论,谢谢!!!

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

相关文章:

  • IP 地址反向解析(IP反查域名)原理与应用
  • CodeTop之LRU缓存
  • uboot常用命令之eMMC/SD卡命令
  • 【Kafka】编写消费者开发模式时遇到‘未解析的引用‘SIGUSR1’’
  • DeepSeek 赋能教育游戏化:AI 重构学习体验的技术密码
  • Docker run命令-p参数详解
  • 知识宇宙-学习篇:学编程为什么从C语言开始学起?
  • Mybatis-入门程序、 数据库连接池、XML映射配置文件、MybatisX
  • 互联网大厂Java求职面试:Spring Cloud微服务架构设计中的挑战与解决方案
  • BUUCTF [ZJCTF 2019]EasyHeap
  • 机器学习AI精准预测复合材料性能、材料结构设计优化;数据驱动加速新材料研发,百年难遇的组合打破科研壁垒!
  • apache http client连接池实现原理
  • 如何做好一份网络安全技术文档?
  • Android Studio 介绍
  • MD5加密(Java)
  • [攻防世界] easyphp writeup
  • 力扣热题100之LRU缓存机制
  • 如何不规范的设置密码
  • 数据安全与纵深访问控制:构建数字时代的安全防线
  • 分享全国数字人才技能提升师资培训班 第五期邀请函
  • Linux三剑客之grep命令使用教程
  • Kotlin 极简小抄 P8(不可空类型、可空类型、注意事项、非空断言 !!)
  • 【Spring AI集成实战】基于NVIDIA LLM API构建智能聊天应用:从配置到函数调用全解析
  • git 删除某个远程库的分支
  • Redis实战-缓存篇(万字总结)
  • QT5.15 MacOS 打包指南
  • Nginx location匹配模式详解
  • Vue 3 路由传参使用指南
  • vscode使用ssh链接服务器
  • 企业批量处理刚需PrintPDF 网络财务办公打印 网页到 Office 一键转 PDF