Как исправить установочные зависимости Docker? - PullRequest
0 голосов
/ 15 февраля 2019

У меня есть система рекомендации фильмов, и я пытаюсь создать для нее образ докера.

needs.txt

pandas==0.22.0
requests==2.18.4
Django==2.0.6
Scrapy==1.5.1
numpy==1.14.0
scipy==1.0.0
pymongo==3.7.2

Dockerfile:

FROM python:3
MAINTAINER SPARSH KEDIA

ENV PYTHONUNBUFFERED 1

COPY ./requirements.txt /requirements.txt
RUN pip install -r /requirements.txt

RUN mkdir /app
WORKDIR /app
COPY ./app /app

RUN adduser -D user
USER user

При запуске сборки Docker выдает следующую ошибку:

error: Command "gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE=1 -D_LARGEFILE64_SOURCE=1 -Inumpy/core/include -Ibuild/src.linux-x86_64-3.7/numpy/core/include/numpy -Inumpy/core/src/private -Inumpy/core/src -Inumpy/core -Inumpy/core/src/npymath -Inumpy/core/src/multiarray -Inumpy/core/src/umath -Inumpy/core/src/npysort -I/usr/local/include/python3.7m -Ibuild/src.linux-x86_64-3.7/numpy/core/src/private -Ibuild/src.linux-x86_64-3.7/numpy/core/src/npymath -Ibuild/src.linux-x86_64-3.7/numpy/core/src/private -Ibuild/src.linux-x86_64-3.7/numpy/core/src/npymath -Ibuild/src.linux-x86_64-3.7/numpy/core/src/private -Ibuild/src.linux-x86_64-3.7/numpy/core/src/npymath -c numpy/random/mtrand/mtrand.c -o build/temp.linux-x86_64-3.7/numpy/random/mtrand/mtrand.o -MMD -MF build/temp.linux-x86_64-3.7/numpy/random/mtrand/mtrand.o.d" failed with exit status 1


  Command "/usr/local/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-ug5tncvh/numpy/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-record-zziwp791/install-record.txt --single-version-externally-managed --prefix /tmp/pip-build-env-wpkwq_6g/overlay --compile" failed with error code 1 in /tmp/pip-install-ug5tncvh/numpy/

  ----------------------------------------
Command "/usr/local/bin/python /usr/local/lib/python3.7/site-packages/pip install --ignore-installed --no-user --prefix /tmp/pip-build-env-wpkwq_6g/overlay --no-warn-script-location --no-binary :none: --only-binary :none: -i https://pypi.org/simple -- wheel setuptools Cython "numpy==1.9.3; python_version=='3.5'" "numpy==1.12.1; python_version=='3.6'" "numpy==1.13.1; python_version>='3.7'"" failed with error code 1 in None
The command '/bin/sh -c pip install -r /requirements.txt' returned a non-zero code: 1

Как исправить эту ошибку?или есть какой-то другой способ загрузить файл require.txt?

Я использую macos HighSierra 10.13.2.

Я новичок в докере, помогите, пожалуйста.

Ответы [ 2 ]

0 голосов
/ 15 февраля 2019

Похоже, проблема связана с numpy, возможно, из-за библиотек setuptools и wheel build.

Добавить к требованиям:

pip==19.0.2
setuptools==40.6.3
wheel==0.32.0

Ссылка ниже разработанадля использования с AWS SageMaker, но, возможно, может помочь вам:

Dockerfile

0 голосов
/ 15 февраля 2019

Это не связано с Docker.Для пакетов numpy, scipy и т. Д. В системе должны быть установлены пакеты gcc и python-dev.

Попробуйте добавить apt-get install -y python-dev в качестве шага в ваш Dockerfile.

PS: естьмогут быть другие зависимости системных пакетов для этих библиотек.Пожалуйста, проверьте и установите их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...