Я полностью потерялся и последние 4-5 дней пытаюсь исправить ту же проблему при развертывании моего приложения django.
Проблема заключается в следующем.
Моя команда миграции не работает, файл конфигурации миграции выглядит следующим образом:
container_commands:
01_migrate:
command: "python3 manage.py migrate"
leader_only: true
option_settings:
aws:elasticbeanstalk:application:environment:
DJANGO_SETTINGS_MODULE: djangomicroblog.settings
Я также пытался изменить команду на несколько разных вещей, в том числе:
command: "python manage.py migrate"
command: "django-admin.py migrate"
command: "/opt/python/run/venv/bin/python3 manage.py migrate"
Различные команды выдают мне разные ошибки, python отчеты о миграции manage.py:
2020-06-21 13:15:48,639 P8373 [INFO] File "manage.py", line 16
2020-06-21 13:15:48,639 P8373 [INFO] ) from exc
2020-06-21 13:15:48,639 P8373 [INFO] ^
2020-06-21 13:15:48,640 P8373 [INFO] SyntaxError: invalid syntax
Я предполагаю, что это потому, что он пытается выполнить с python2
Python3 manage.py миграции отчетов :
2020-06-21 13:12:37,445 P8066 [INFO] Traceback (most recent call last):
2020-06-21 13:12:37,445 P8066 [INFO] File "manage.py", line 10, in main
2020-06-21 13:12:37,445 P8066 [INFO] from django.core.management import execute_from_command_line
2020-06-21 13:12:37,445 P8066 [INFO] ModuleNotFoundError: No module named 'django'
2020-06-21 13:12:37,445 P8066 [INFO]
2020-06-21 13:12:37,445 P8066 [INFO] The above exception was the direct cause of the following exception:
2020-06-21 13:12:37,445 P8066 [INFO]
2020-06-21 13:12:37,445 P8066 [INFO] Traceback (most recent call last):
2020-06-21 13:12:37,445 P8066 [INFO] File "manage.py", line 21, in <module>
2020-06-21 13:12:37,445 P8066 [INFO] main()
2020-06-21 13:12:37,445 P8066 [INFO] File "manage.py", line 16, in main
2020-06-21 13:12:37,445 P8066 [INFO] ) from exc
2020-06-21 13:12:37,446 P8066 [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?
Итак, я пытался найти виртуальную среду, которая, по словам inte rnet, должна находиться в / opt / python / (к которой я обращаюсь через s sh и sudo su ), но этот каталог просто не существует
Моя структура каталогов следующая:
структура каталогов на локальном устройстве
Единственное, что у меня есть сейчас, это то, что мое приложение написано на python 3.8, и поэтому файл requirements.txt из 3.8 вызывает несовместимость? Но я понятия не имею, как это исправить, если это так.