Docker映像构建失败。 Jupyter命令“ nbconvert”找不到ipython笔记本

时间:2018-08-29 13:09:50

标签: python docker jupyter-notebook dockerfile jupyter

我创建了一个Dockerfile,目的是在Docker中执行Jupyter笔记本。看起来像下面的

FROM ubuntu:latest

RUN apt-get update && apt-get install -y python3 \
    python3-pip

RUN pip3 install jupyter

WORKDIR /home/me/JupyterOneClick/
RUN pwd

RUN jupyter nbconvert --to python Hello.ipynb
RUN python Hello.py
#CMD ["python","Hello.py"]

但是,构建此映像时出现错误(docker build -t jupyter:latest)。

第6步将jupyter笔记本转换为python文件,然后第7步执行该python文件。

  

第6/7步:运行jupyter nbconvert --to python Hello.ipynb    --->在8516a27588f6中运行   [NbConvertApp]警告|模式'Hello.ipynb'没有文件匹配   此应用程序用于将笔记本文件(* .ipynb)转换为其他各种文件   格式。

jupyter笔记本存储在/ home / me / JupyterOneClick中。

这时,构建过程停止。

我还尝试将第6步和第7步移到Shell脚本中,并从Dockerfile运行该脚本,通过该文件,我可以构建映像,但由于找不到外壳脚本而无法运行它。

  

命令'/ bin / sh -c chmod + x ./script.sh'返回非零代码:1

谁能告诉我该如何解决?我是一个初学者,但是据我所知,RUN创建了一个新的临时容器,因此它无法找到该文件。

对于任何想知道的人,我没有使用kubeflow或JupyterHub,因为它们允许新的开发环境,因此我必须部署现有的笔记本。

1 个答案:

答案 0 :(得分:1)

我不是专家,但您似乎忘记了复制声明。 使用 COPY ./Hello.ipynb /Hello.ipynb 而不是 -- to python 你应该使用 -- to script