У меня нет разрешения на установку pip в оболочке docker shell

У меня есть приложение Django в контейнере docker, я хотел бы установить djangorestframework, но когда я вхожу в оболочку контейнера docker exec -t -i <container id> shell и запускаю pip install djangorestframework, то получаю:

ERROR: Could not install packages due to an OSError: [Errno 13] Permission denied: '/.local' Check the permissions.

Возможно, вам будет полезно знать, что я использую Linux машину и у меня была проблема с тем, что Docker запускал процессы Django от имени root, что означало, что мне нужны права суперпользователя для редактирования файлов Django, которые были созданы функциями Django manage.py. Я решил эту проблему, добавив:

user: "${user_id}:${group_id}"

В файл docker-compose.yml

EDIT. Как посоветовал @tutiplain, я добавил djangorestframework в файл requirements.txt. Теперь, когда я собираю образ, Docker использует pip для установки djangorestframework. Теперь появилась новая проблема, процесс сборки говорит, что он устанавливает пакет, но когда я пытаюсь импортировать его в файл, Django не может найти модуль. Также пакет не отображается в списке, когда я запускаю pip list в оболочке контейнера.

Вернуться на верх