tensorflow
のDockerイメージをpython3
とともに使用しています:
FROM tensorflow/tensorflow:latest-gpu-py3
サードパーティのライブラリが存在するためにはCython
が必要なので、そうします
RUN curl -O https://bootstrap.pypa.io/get-pip.py && \
python get-pip.py && \
rm get-pip.py
RUN \
pip install --no-cache-dir Cython
問題は、その後Cython
からはpython
を表示できますが、python3
からは表示できないことです。
root@fdb5bb783cf9:/darkflow# python3 -c "import Cython; print(Cython.__version__)"
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named 'Cython'
root@fdb5bb783cf9:/darkflow# python -c "import Cython; print(Cython.__version__)"
0.25.2
解決策は、pip3
を使用してCython
installを実行することと、python3
を使用してライブラリのsetup.py
を実行することです。
RUN apt-get update && apt-get install -y \
python3-pip
そして
RUN \
pip3 install --no-cache-dir Cython
そしてライブラリ層
RUN \
cd lib && \
python3 setup.py
最後のものは、pip3 install .
を使用してpip3
を使用してグローバルにインストールすることができます。
今回は
RUN python3 -c "import Cython; print(Cython.__version__)"
そこにCython
ありました:0.25.2