требования к pip не совпадают при докеризации

#python #docker #pip

Вопрос:

Я хочу закрепить свой проект, но я получаю следующие ошибки.

#9 ОШИБКА 13.36: Не удалось найти версию, удовлетворяющую требованию bcrypt==3.2.0 (из версий: 1.0.0, 1.0.1, 1.0.2, 1.1.0, 1.1.1, 2.0.0, 3.0.0, 3.1.0, 3.1.1, 3.1.2, 3.1.3, 3.1.4, 3.1.5, 3.1.6, 3.1.7, 3.2.0) #9 13.36 ОШИБКА: Не найдено соответствующего распределения для bcrypt==3.2.0

Мой Док-файл

 FROM python:alpine3.9

WORKDIR /app

ADD . /app

RUN python -m pip install --upgrade pip

CMD pip --version

RUN pip install -r requirements.txt
 

Мой Requirements.txt

 appdirs==1.4.4
bcrypt==3.2.0
Bcrypt-Flask==1.0.1
bidict==0.21.2
cffi==1.14.5
click==8.0.0
colorama==0.4.4
dependency-injection==1.2.0
distlib==0.3.1
dominate==2.6.0
filelock==3.0.12
Flask==2.0.0
flask-abort==0.0.1
Flask-Admin==1.5.8
Flask-Bcrypt==0.7.1
Flask-Bootstrap==3.3.7.1
Flask-Login==0.5.0
Flask-SocketIO==5.1.0
Flask-SQLAlchemy==2.5.1
Flask-WTF==0.15.1
greenlet==1.1.0
itsdangerous==2.0.0
Jinja2==3.0.0
MarkupSafe==2.0.0
numpy==1.20.3
pandas==1.2.4
pycparser==2.20
python-dateutil==2.8.1
python-engineio==4.2.0
python-socketio==5.3.0
pytz==2021.1
six==1.16.0
SQLAlchemy==1.4.15
virtualenv==20.4.6
visitor==0.1.3
Werkzeug==2.0.0
WTForms==2.3.3
 

Я попытался удалить Bcrypt и ту же ошибку с другим пакетом

Комментарии:

1. @KlausD., это изображение предназначено для alpine 3.9, а не для python 3.9.

2. Вы когда-нибудь находили решение?

Ответ №1:

В соответствии с этим, попробуйте добавить следующий шаг перед установкой зависимостей от requirements.txt:

 RUN apk add --no-cache musl-dev gcc libffi-dev g  
 

Комментарии:

1. Не работает для меня: ` Шаг 4/6 : ЗАПУСТИТЕ apk add —no-cache musl-dev gcc libffi-dev g —> Запуск в 169ac114f2d6 /bin/sh: 1: apk: не найдена команда ‘/bin/sh-c apk add —no-cache musl-dev gcc libffi-dev g ‘ вернул ненулевой код: 127 «

2. @KonradLinkowski свяжи свой док-файл