Tensorflow:Docker镜像和-gpu后缀

3
在支持GPU的Tensorflow Docker镜像中(例如:tensorflow/tensorflow:2.2.0-gpu),安装的Python包是tensorflow-gpu(如pip freeze所示)。
安装任何依赖于tensorflow的Python包都会触发TensorFlow本身的安装,尽管它已经以不同的名称安装(因为--正确地--tensorflow-gpu!= tensorflow)。
有没有办法避免这种情况发生?
1个回答

1
你可以添加一条指令来安装一个假的tensorflow“包”,它只写入元数据而不添加重复源代码:
$ python -c 'from setuptools import setup; setup(name="tensorflow", version="2.2.0")' install

在Docker镜像中,它看起来像这样:

FROM tensorflow/tensorflow:2.2.0-gpu
RUN python -c 'from setuptools import setup; setup(name="tensorflow", version="2.2.0")' install
RUN pip install my-requirements
RUN pip uninstall -y tensorflow  # cleaning up

我曾经考虑过“伪造”一个TensorFlow包,但是-c ...一行命令确实是一项艺术品 :) 谢谢,它非常好用。 - Nicola Montecchio
:-) 很高兴我能帮到你! - hoefling

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接