База данных миграции Django AWS Elastic Beanstalk
Я развертываю проект Django в AWS, используя Elastic Beanstalk, и застрял на переносе базы данных.
Где я нахожусь: Я могу успешно развернуть свой проект django и загрузить страницу через mysubdomain.elasticbeanstalk.com. Страница загружается без ошибок, пока я не попадаю на страницу, которая должна выполнить вызов базы данных. Я тогда получаю ошибку вродеrelation "accounts_user" does not exist LINE 1: SELECT COUNT(*) FROM "accounts_user"
потому что моя база данных не была перенесена.
Что я пробовал: Я перепробовал несколько вариантов вещей. К счастью, есть много сообщений от stackoverflow и пара обучающих программ. К сожалению, все они, похоже, используют другую версию, и то, что они предлагают, не относится к моему проекту.
Мне совершенно ясно, что мне нужно запустить миграцию вfoobar.config
файл внутри.ebextensions/
папка. Вот основа того, что я хочу сделать:
container_commands:
01_migrate:
command: "python manage.py migrate --noinput"
leader_only: true
В журналах я вижу, что сценарий после развертывания попытался запустить, но не удалось. Я не получаю никакой другой информации об ошибке, единственное, что я вижу, это что-то вроде «ОШИБКА: ошибка 01_migrate сценария развертывания поста»
Я обнаружил, что мне нужно активировать виртуальную среду для команды, что имеет смысл. Из asdf я пытаюсь это:
container_commands:
01_migrate:
command: "source /opt/python/run/venv/bin/activate && python rlg/manage.py migrate --noinput"
leader_only: true
Но это не работает. На самом деле, через SSH я обнаружил, что у меня даже нет папки / opt / python /, только / opt / aws / и / opt /asticbeanstalk /. Все учебные пособия и вопросы SO относятся к этой папке, но у меня ее нет?
ВЕРСИИ: Python 3.4.1, Django 1.7.7, AWS CLI 3.2.1, Postgres 9.3