Docker:无法在 python3 中导入 tensorflow,但可以在 python2 中导入 dockerfile 构建



我有一个非常基本的dockerfile,如下:

FROM gcr.io/tensorflow/tensorflow:latest-gpu
FROM python:3.5
RUN pip install opencv-python
RUN apt-get update && apt-get install -y libsm6 libxext6 libxrender-dev
RUN pip install skll
RUN pip install keras
RUN pip install imutils
ADD . /model1
WORKDIR /model1
VOLUME ["/model1/data", "/model1/notebooks"]

我已经学习了一天,所以我接受这可能打破了最佳实践。

我的问题是 - 一旦我构建并运行容器,然后打开Python并运行

 import tensorflow

我得到

 ImportError: No module named 'tensorflow'

如果我不包含python 3.5,则当我打开Python时,其版本2.7并正确导入TensorFlow。我如何使用Python 3导入TensorFlow并在Dockerfile

中指定。

如果您想使用Python 3,则必须使用Python 3 Docker映像,在您的情况下,它将是:

FROM tensorflow/tensorflow:latest-gpu-py3

您可以在此处看到所有py3标签。还有一个问题,但是tl; dr是,如果图像大小支持python 2和3,则太大了,因此,单独的py3标签。

相关内容

最新更新