Докер: нет такой опции: --use-wheel

Я пытаюсь использовать Docker для создания пакета зависимостей для AWS Lambda, используя этот репозиторий, но всякий раз, когда я пытаюсь запустить файл build.sh, я получаю сообщение:

нет такой опции: --use-wheel

Затем, когда я пытаюсь использовать pip install wheel (за пределами Docker), мне сказали, что это уже на моей локальной машине, которая есть. Как мне установить Wheel в контейнере Docker?

Если это полезно, то похоже, что это строка кода в build.sh, которая вызывает проблему:

test -f /outputs/requirements.txt && pip install --use-wheel -r /outputs/requirements.txt

Любая помощь высоко ценится!

2 ответа

Решение

Ваша проблема не связана с отсутствующими зависимостями (wheel установлен в build.sh скрипт, на который вы ссылались: https://github.com/ryansb/sklearn-build-lambda/blob/master/build.sh#L18)

use-wheel устарела и больше не существует для pip,

Вы можете достичь того же, опуская --use-wheel Записи из сценария. Посмотрите на Python 3.6 PR в связанном репозитории: https://github.com/ryansb/sklearn-build-lambda/pull/16/files

--use-wheel не рекомендуется с пипа 7 (в пользу --only-binary) и удален с 10 бета 1.

Чтобы исправить все скрипты в git-репо:

git grep -l -- --use-wheel | while read f; do sed -i -e 's|use-wheel|only-binary=:all:|g' ${f}; done

Другие вопросы по тегам