Установил psycopg-binary на Docker pipenv, получил ошибку не нашел Python 3.8 в системе

Я использую pipenv, Docker 19.03.8, django 3.0.1 framework и python 3.8.2 (проверено python --version). Когда я пытаюсь установить psycopg2-binary с помощью $ docker-compose exec web pipenv install psycopg2-binary==2.8.3, я получаю сообщение об ошибке:

Warning: Python 3.8 was not found on your system…
Neither 'pyenv' nor 'asdf' could be found to install Python.
You can specify specific versions of Python with:
$ pipenv --python path/to/python

Мой Pipfile содержит:

[requires]
python_version = "3.8"

Докерфайл содержит:

FROM python:3.8

docker-compose.yml содержит:

version: '3.8'

Я попытался установить pyenv и asdf (как было предложено в сообщении об ошибке) через brew, и все равно получил ошибку. Я также пытался указать версию, используя $ pipenv --python /Library/Frameworks/Python.framework/Versions/3.8/bin/python3 и $ pipenv --python /Users/dhafinrazaq/.pyenv/versions/3.8.2/bin/python3.8, но все равно получаю ошибку.


person d123    schedule 28.05.2020    source источник
comment
Вы путаете свою хост-машину с док-контейнером. Контейнер Docker не имеет никакого представления о программном обеспечении на вашем компьютере с MacOS. Внутри контейнера докеров также не требуется использовать среды. Просто установите обычные пакеты с помощью pip и запустите python.   -  person Christophe De Troyer    schedule 28.05.2020


Ответы (1)


$ docker-compose exec web pipenv --python /usr/bin/python3 install psycopg2-binary==2.8.3

вы можете указать свой путь установки python, как я указал выше. Я выделил эту часть жирным шрифтом в приведенном выше коде. это сработало для меня. --python /usr/bin/python3 добавить эту часть.

person Misfar Siddeek    schedule 08.06.2020