Docker - 如何将新的python依赖项添加到现有的docker镜像中?

时间:2016-05-15 08:56:54

标签: docker tensorflow deep-learning dockerfile

我是码头工人的新手。

我在Windows 10操作系统中使用tensorflow docker时遇到了困难。

当我关注Udacity的深度学习课程时,我已经在instruction之后下载了tensorflow码头工具,并尝试启动第一项作业。

但由于docker镜头缺少 scikit-learn 包,因此无法启动。

所以基本上我要做的就是克服这个问题,我首先运行我的docker图像:

docker run -it -p 8888:8888 b.gcr.io/tensorflow/tensorflow /bin/bash

然后我跑:

pip install -U scikit-learn

然后我跑(可能不是100%正确但是类似的东西):

./run_jupyter.sh

启动iPython笔记本以继续我的作业。

我的问题很简单:

如何保存我在此泊坞窗映像上发生的此更改,以便每次重新启动笔记本时都不必重复此步骤?

我可以通过修改docker配置文件来完成吗?

1 个答案:

答案 0 :(得分:3)

一旦您的容器处于正确的状态(安装FXMLLoader loader = new FXMLLoader(getClass().getResource("message.fxml")); Parent root = loader.load(); MessageController controller = loader.getController(); controller.addMessage("Hello World"); controller.addMessage("42"); ,执行脚本),停止它(scikit-learn)并将其作为新图像提交。

请参阅docker commit,以便将容器的文件更改或设置提交到新图像中。

然后您可以运行该新图像(使用与之前相同的参数),但从该新图像创建的容器将具有之前的步骤。

但另一种方法是从tenserflow udacity Dockerfile建立你的形象。

docker stop

默认情况下,该图像将执行正确的命令。