使用 tensorflow 在 docker 上导入熊猫
Posted
技术标签:
【中文标题】使用 tensorflow 在 docker 上导入熊猫【英文标题】:Import pandas on docker with tensorflow 【发布时间】:2016-09-17 15:29:32 【问题描述】:我使用的是Windows,正在学习使用tensorflow,所以需要在Docker(Toolbox)下运行。
按照通常的说明:
$ docker run -it gcr.io/tensorflow/tensorflow
我可以在浏览器192.168.99.100:8888
上启动一个 Jupyter 笔记本,然后毫无问题地运行教程笔记本。
现在,当我尝试使用 pip 安装在我的计算机中的 import pandas as pd
时,在 Juypter 上它只是说 ImportError: No module named pandas
知道如何让这个库在从 docker 启动的 tensorflow 图像中工作吗?
Screenshot
【问题讨论】:
【参考方案1】:Docker image
应该建立在linux
操作系统上。您应该在 Docker 中启动 shell
image
grc.io/tensorflow/tensorflow
以安装必要的 python 依赖项。
使用方法见 Docker quickstart
docker run -it grc.io/tensorflow/tensorflow /bin/bash
然后
sudo apt-get install python-pandas
根据pandas docs.
为避免每次启动映像时都这样做,您需要将更改commit
创建一个新的image
。
要commit
改,需要得到container
id
(经过run
和上面的安装步骤):
sudo docker ps –a # Get list of all containers previously started with run command
然后,commit
使用您刚刚获得的容器列表中显示的 container_id
更改您的 git
样式,并为其提供您选择的 image_name
:
sudo docker commit container_id image_name
新的image
现在将显示在sudo docker ps –a
显示的列表中。
如果您获得免费的docker
帐户,您可以将push
和pull
更新为您的image
到您的docker
repo
,或者将其保留在本地。
请参阅“更新和提交您的图像”下的 docs。
【讨论】:
按照说明,上面写着E: Unable to locate package python-pandas
参见此处:askubuntu.com/questions/672338/…
这适用于当前运行。但是,当我下次运行时,我必须重复整个过程以重新下载和安装 pandas。任何线索如何避免这种情况?【参考方案2】:
对于 windows 用户:
docker run -d -p 8888:8888 -v /c/Users/YOUR_WIN_FOLDER:/home/ds/notebooks gcr.io/tensorflow/tensorflow
然后使用以下命令查看容器的名称,以便稍后轻松执行命令(最后一列将是名称):
docker ps
然后运行:
docker exec <NAME OF CONTAINER> apt-get update
最后安装 pandas:
docker exec <NAME OF CONTAINER> apt-get install -y python-pandas
(-y 是一个自动的“是”,以阻止出现提示您同意安装占用额外磁盘空间)
【讨论】:
谢谢。有效。 /home/ds/笔记本。这是什么?我应该在这里给出哪条路径。没有这个也可以。 很高兴听到它的帮助 :) 第二个文件夹只是您希望将 Windows 源文件夹映射到其中的目标文件夹。我故意为它保留了一些默认值,因为我相信大多数用户不一定会关心 docker 的 tensorflow 图像驻留在哪里,只要将一些必需的文件映射到其中(如果你想使用一些驻留在 Windows 机器上的数据文件您将不得不使用这样的映射)。 非常感谢:) "docker exec这是一张安装了 pandas 的图片 -
https://hub.docker.com/r/zavolokas/tensorflow-udacity/
或者拉一下docker pull zavolokas/tensorflow-udacity:pandas
【讨论】:
以上是关于使用 tensorflow 在 docker 上导入熊猫的主要内容,如果未能解决你的问题,请参考以下文章
在Docker中使用TensorFlow(GPU版+Ubuntu 20.04)
TensorFlow:使用docker镜像搭建TensorFlow环境
在Docker中使用TensorFlow(GPU版+Ubuntu 20.04)