ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable?

И так, я получаю ошибку

ImportError: cannot import name 'JSONField' from 'django.db.models' (/usr/local/lib/python3.8/site-packages/django/db/models/__init__.py)

зашел в терминал в докере и прописал python3.8 -m pip install -U -I django чтобы удалить предыдущую версию django и установить новую, последнюю

введите сюда описание изображения

в логе этого /ims_api_1

Traceback (most recent call last):
  File "manage.py", line 21, in <module>
    main()
  File "manage.py", line 12, in main
    raise ImportError(
ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?

чтобы пофиксить эту ошибку, мне нужно в терминале прописать docker stop [CONTAINERS], затем docker rm [CONTAINERS], после, когда я пишу docker-compose up и захожу в логи этого api, снова вижу

ImportError: cannot import name 'JSONField' from 'django.db.models' (/usr/local/lib/python3.8/site-packages/django/db/models/__init__.py)

такой вот круговорот получается и я не знаю как решить эту проблему

Dockerfile

FROM python:3.8

ENV PIP_NO_CACHE_DIR=off \
  PYTHONUNBUFFERED=1

RUN pip install -U pip setuptools wheel \
    django==2.2.6 \
    django-cors-headers==3.1.1 \
    django-currentuser==0.4.2 \
    django-debug-toolbar==2.0 \
    django-filter==2.2.0 \
    django-gtin-fields==0.1.2 \
    django-mptt==0.10.0 \
    djangorestframework==3.10.3 \
    djoser==2.0.3 \
    pillow==6.2.1 \
    psycopg2-binary==2.8.4 \
    sentry-sdk==0.13.1 \
    sphinx==2.2.1 \
    uwsgi==2.0.18

WORKDIR /opt/cron-ims/api/
COPY . .

RUN cd docs && make html

RUN chmod +x "./entrypoint.sh"
ENTRYPOINT ["sh", "./entrypoint.sh"]

EXPOSE 80
ENV PORT 80

CMD ["uwsgi", "./ims/uwsgi.ini"]

Не знаю какие еще файлы вам показать, но я всегда на связи и покажу любой файл который потребуется

Спасибо всем!


Ответы (0 шт):