gpt4 book ai didi

docker - 在Docker容器或Docker镜像中使用Tensorflow的正确方法是什么?

转载 作者:行者123 更新时间:2023-12-02 19:38:46 30 4
gpt4 key购买 nike

我试图运行一个带有Tensorflow的简单Docker容器(首先使用CPU)。我认为只设置一次Dockerimage是一个好主意(即每次运行容器时都不更新tensorflow版本)。

为此,建议在Dockerfile中执行以下操作(注释来自提供建议的源):

# This means you derive your docker image from the tensorflow docker image
FROM gcr.io/tensorflow/tensorflow

但是,当我运行Docker容器时,我做了 pip list,没有看到Tensorflow在任何地方可用,而且当我运行脚本时,我遇到了熟悉的错误:
ImportError: No module named 'tensorflow'

我想到了一种方法,只需将我的Dockerfile显式地添加为 pip3 install tensorflow。我计划制作一个bash脚本并让我的Dockerfile运行它:
# bash script intall_tensorflow.sh 
# to install Tensorflow in container
export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-0.12.0rc1-py3-none-any.whl
pip3 install --upgrade $TF_BINARY_URL

然后将其添加到docker文件中:
RUN sh intall_tensorflow.sh

但是,我的直觉告诉我,这可能是错误的或过于古怪的。如果我以后无论如何要手动安装Tensorflow,为什么我首先需要tensorflow基本图像 FROM gcr.io/tensorflow/tensorflow

我尝试在线研究 gcr.io/tensorflow/tensorflow可能在做什么,但是我没有发现任何 super 有用的东西。有人知道镜像本身(即通过构建Docker镜像)在Docker容器中提供Tensorflow的正确方法是什么吗?

抱歉,如果我真的很忙,但只是觉得我做错了什么,而我在网上找不到能解决我问题的东西。

在查看答案之后,似乎主要的问题可能是python 3出于某种原因找不到tensorflow,而python 2可以找到。这是否意味着我需要自己直接安装TensorFlow(在Docker镜像中带有pip)才能使用正确版本的TensorFlow?

最佳答案

从您对pip3的使用情况判断-您是否在使用python 3?那可能是造成您的问题。我试图重新创建您的问题,但是python 2似乎工作正常。

user@computer:~$ docker run -it gcr.io/tensorflow/tensorflow /bin/bash
root@61bb0f99582b:/notebooks# python
Python 2.7.6 (default, Oct 26 2016, 20:30:19)
[GCC 4.8.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
>>>
root@61bb0f99582b:/notebooks# python3
Python 3.4.3 (default, Oct 14 2015, 20:28:29)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named 'tensorflow'
>>>

如果由于某种原因仍然导致您遇到问题,也可以按照自己的描述自行安装。关于docker的一件好事是,当它从Dockerfiles创建图像时会缓存图像,因此您不必在每次构建图像​​时都重新安装tensorflow。 This article解释了一些概念。

关于docker - 在Docker容器或Docker镜像中使用Tensorflow的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41170610/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com