如何将anaconda+jupyter build成docker镜像

本文介绍了如何为业务需求构建一个包含anaconda和jupyter的Docker镜像。通过在本地运行anaconda安装脚本,然后将安装目录ADD到Dockerfile中,设置环境变量并安装jupyter,最后解决编码错误问题,生成配置文件并启动jupyter服务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近由于业务的需求,要build一个jupyter的image来提供服务,因为docker的轻量化可以很方便的迁移。下面来介绍一下我所做的操作,以及我踩的坑:

首先来安装anaconda,有python2和3版本的,版本不同但是build的过程是一样的,有两种方式,第一种,你可以通过Dockerfile的方式来build image,但是在运行Anaconda2-5.0.1-Linux-x86_64.sh脚本的时候无法实现交互,所以,我才用了docker commit的方式来执行,但是事实证明也可以通过Dockerfile的方式来build,您只需要在本机上先运行了Anaconda2-5.0.1-Linux-x86_64.sh的脚本,并将生成的文件夹就是anaconda2 ADD到image中相应的位置,并且修改环境变量,将PATH加进去即可。下面以python2为例来说:

1. 从anaconda官网上下载运行脚本Anaconda2-5.0.1-Linux-x86_64.sh,其中在下载的时候要注意你的系统的是32位还是64位。


2. 将脚本scp到基础镜像中,安装解压指令bzip2

yum install bzip2

3. 运行脚本(一路输入yes)

sh Anaconda2-5.0.1-Linux-x86_64.sh

4. 更新anaconda

conda update anaconda

### 如何在 Docker 容器中安装 Jupyter 为了在 Docker 容器中功部署并运行 Jupyter Notebook 或 Lab,可以遵循以下方法: #### 使用官方 Python 镜像构建自定义镜像 通过继承官方的 Python 基础镜像来创建一个新的 Dockerfile 文件,在其中加入必要的包管理命令以安装 Jupyter。 ```dockerfile FROM python:3.9-slim-buster WORKDIR /app RUN pip install --no-cache-dir jupyterlab \ && mkdir /notebooks EXPOSE 8888 CMD ["jupyter", "lab", "--ip=0.0.0.0", "--port=8888", "--allow-root"] ``` 此 `Dockerfile` 中指定了基于精简版 Debian Buster 的 Python 3.9 环境作为基础层,并执行了如下操作: - 设置工作目录为 `/app` - 利用 Pip 工具安装最新版本的 JupyterLab[^1] - 创建用于存储笔记本文件的工作空间 `/notebooks` - 开放默认端口 8888 给外部访问 - 设定启动容器时自动开启的服务及其参数配置 #### 构建与运行容器实例 完上述定制化镜像描述文档编写之后,可以通过下面两条指令快速建立新映像以及启动关联的应用程序进程。 ```bash # Build the custom image from current directory's Dockerfile. docker build -t my-jupyter . # Run a new container based on this newly created image. docker run -d -p 8888:8888 --name=my_jupyter_container my-jupyter ``` 以上步骤完后即可打开浏览器输入 http://localhost:8888 访问已搭建好的交互式编程环境页面[^2]。 #### 替代方案:利用现Jupyter 映像 如果不想自己动手制作专属镜像的话,也可以直接选用由社区维护者们预先打包好一切依赖关系的公共仓库资源。例如采用 Anaconda 发布的企业级科学计算平台——Anaconda Individual Edition 所对应的官方 Docker Hub 上托管的镜像。 ```bash docker pull continuumio/anaconda3 docker run -d -p 8888:8888 continuumio/anaconda3 start.sh jupyter lab ``` 这样不仅省去了手动设置的时间本,还能享受到来自专业团队定期更新带来的安全性和性能优化保障[^3]。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值