2016-07-06 2 views
0

У меня возникли трудности с получением моего приложения на Docker. В настоящее время я пытаюсь построить сборку, но я столкнулся с ошибкой, я не могу понять, как ее решить.Docker не может построить, потому что не может найти соответствующее распределение потребности.

Когда я побежал docker-compose build, он тянул и загрузку, но когда он попытался собрать json, он дал ошибку:

Could not find a version that satisfies the requirement json (from -r requirements.txt (line 2)) (from versions:) 
No matching distribution found for json (from -r requirements.txt (line 2)) 

Моих требования к моей колбе приложения является

flask 
json 
pandas 
pymongo 
math 
heapq 
functools 
numpy 
scipy 
itertools 

Моего docker-compose file is

web: 
    restart: always 
    build: . 
    command: python -u app.py 
    ports: 
    - "5000:5000" 
    volumes: 
    - /usr/app 
    links: 
    - mongodb 

mongodata: 
    image: mongo:3.2.7 
    volumes: 
    - /data/db 

mongodb: 
    image: mongo:3.2.7 
    ports: 
    - "27017:27017" 
    volumes_from: 
    - mongodata 

My Файловая структура

/myapp 
    /utils 
    /__init__.py 
    /utils_funcs.py 
    app.py 
+0

Я заметил, что сообщение об ошибке, как представляется, указывая на пустой номер версии. 'из версий:'. Проблема может быть в файле require.txt. Заботиться, чтобы поделиться? –

ответ

3

json был добавлен в Python, поскольку Python 2.6, вы должны удалить его из файла требований.

У вас также есть такие вещи, как math и itertools, которые являются частью Python в вашем файле требований.

Файл требований предназначен для пакетов, которые необходимы вашему приложению, которые не являются частью ядра Python; в основном независимо от того, что вы устанавливаете, используя pip.

Самый простой способ создать файл требований - использовать pip freeze > requirements.txt - это создаст файл требований, который имеет только внешние требования.

Файл требования должны выглядеть следующим образом:

flask 
pandas 
pymongo 
numpy 
scipy 
+0

Что относительно functools? – AlanH

+0

'functools' находится на Python с 2.5; [здесь находятся документы] (https://docs.python.org/2/library/functools.html). –

+0

Извините, я имел в виду heapq! – AlanH

Смежные вопросы