Установка пакета python с private.txt не работает

Я установил выпуск OpenEDX devstack ironwood с помощью докера на свой компьютер и работает правильно. Теперь я пытаюсь установить дополнительные пакеты python с помощью файла lms / requirements / edx / private.txt. Насколько я понимаю, любой пакет, который я добавляю в этот файл, должен быть автоматически установлен, когда я выполнил команду make dev.provision, но пакет не установлен.

Если я попытаюсь установить пакет вручную с помощью команды pip install из контейнера, пакет будет установлен правильно. Но это не решение, потому что как только я перезапускаю контейнер, пакет «уходит».

Итак, мой вопрос: как я могу установить дополнительные пакеты в развертывании openEDX devstack?


person SantiFdezMunoz    schedule 07.02.2020    source источник


Ответы (1)


В течение make dev.up выполняется скрипт programs/provision.sh. Вы можете добавить в этот provision.sh что-то вроде

command="source /edx/app/edxapp/devstack.sh && cd /edx/app/edxapp/edx-platform && pip install -r requirements/edx/private.txt"
docker exec -i edx.devstack.lms bash -c "${command}"

после provision_ida lms "lms shell" edxapp edx-platform. Или что-нибудь более интересное на этот счет.

Теперь лучше было бы зафиксировать образ докера после того, как вы установили свои личные требования. Для этого можно использовать:

docker ps | grep devstack.lms  # get the CONTAINER_ID
docker commit <CONTAINER_ID> edx.devstack.lms
person Felipe    schedule 24.02.2020