Я пытаюсь развернуть свое приложение django через AWS elasti c beanstalk, и последние 2 дня я столкнулся с проблемой, которую я сузил еще больше.
Команда в процессе развертывания дает сбой, эта команда выглядит следующим образом:
container_commands:
01_migrate:
command: "python3 manage.py migrate"
leader_only: true
Раздел журналов консоли AWS EB, который сообщает мне об этом, отсылает меня к cfn-init.log, проверяя это говорит мне то же самое. Однако в cfn-init-cmd.log я вижу это
2020-06-19 18:24:24,753 P5019 [INFO] Command 01_migrate
2020-06-19 18:24:24,771 P5019 [INFO] -----------------------Command Output-----------------------
2020-06-19 18:24:24,771 P5019 [INFO] Traceback (most recent call last):
2020-06-19 18:24:24,771 P5019 [INFO] File "manage.py", line 10, in main
2020-06-19 18:24:24,771 P5019 [INFO] from django.core.management import execute_from_command_line
2020-06-19 18:24:24,771 P5019 [INFO] ModuleNotFoundError: No module named 'django'
2020-06-19 18:24:24,771 P5019 [INFO]
2020-06-19 18:24:24,771 P5019 [INFO] The above exception was the direct cause of the following exception:
2020-06-19 18:24:24,771 P5019 [INFO]
2020-06-19 18:24:24,772 P5019 [INFO] Traceback (most recent call last):
2020-06-19 18:24:24,772 P5019 [INFO] File "manage.py", line 21, in <module>
2020-06-19 18:24:24,772 P5019 [INFO] main()
2020-06-19 18:24:24,772 P5019 [INFO] File "manage.py", line 16, in main
2020-06-19 18:24:24,772 P5019 [INFO] ) from exc
2020-06-19 18:24:24,772 P5019 [INFO] 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?
, что наводит меня на мысль, что проблема в том, что моя виртуальная среда не активируется. Некоторые исследования в Интернете говорят мне, что команда для активации venv должна быть
opt/python/run/venv/bin/activate
Я пытался активировать это через eb s sh, но безуспешно, получил сообщение
bash: opt/python/run/venv/bin/activate: No such file or directory
когда я проверяю каталог opt, это подтверждается отсутствием папки python, я понятия не имею, почему виртуальный env отсутствует / не может быть активирован, и любая помощь будет принята с благодарностью
EDIT - структура каталогов: родительский каталог - django микроблог
.ebextensions -
djangmicroblog -
djangoportfolio (локальная папка virtualenv) -