Dockerfile中使用Anaconda安装Jupyter并使用 Iframe嵌入网页

近期有需求需要嵌入Jupyter到网站的Iframe,同时需要在Dockerfile中提前搭建好环境,遇到了不少的坑:

基础镜像的选择

continuumio/anaconda3

从dockerhub中选择了一个制作好的anaconda3的镜像

创建并激活环境

开始的时候是直接使用Dockerfile在镜像中直接使用conda create和conda activate,发现无法激活环境。

解决方法:

RUN . /root/.bashrc \
    && conda create -n envname -y \
    && conda activate envname \

在RUN前加上一行就可以运行了,当然这里是在上面的基础镜像上有效,其他的可以看看这个仓库的dockerfile对.bashrc做了什么。接下来就可以用conda安装依赖了。

容器启动的时候运行指定虚拟环境的jupyter

将该命令写入/.bashrc

echo "conda activate envname" >> ~/.bashrc \

使用entrypoint.sh

#!/bin/bash
. /root/.bashrc
jupyter lab

同时设置启动的切入点:

COPY entrypoint.sh /