django-admin.py и путь python на EC2 Amazon Beanstalk

Я развернул приложение django на Elastic Benastalk, но мои команды не работают, и я думаю, что проблема в том, что django-admin.py не находится в $PYTHONPATH , я хотел бы добавить мое приложение в путь python, но я не знаю, t знать, каков точный путь к экземпляру EC2. На самом деле я нашел его под: /opt/python/bundle/3/app (я использовал команду «find» через SSH) … но является ли это фиксированным и надежным путем? ps: WTF – это «3» ?? (наверняка не версия или количество моих разворачиваний ^ _ ^)

ОБНОВИТЬ:

если я подключился к /opt/python/bundle/3/app/myappname и запустил:

 python manage.py shell 

Я получил:

  File "manage.py", line 3, in <module> from django.core.management import execute_from_command_line ImportError: No module named django.core.management 

РЕШИТЬ!

Amazon Beanstalk использует virtualenv (например, я делаю это самостоятельно), чтобы активировать его, вы должны:

 source /opt/python/run/venv/bin/activate cd /opt/python/current/app python manage.py commandname 

НО, чтобы использовать пользовательские команды управления (поэтому мне нужно получить доступ к оболочке django на моем экземпляре EC2), вы должны добавить свое приложение в путь python, а также все переменные среды, используемые вашим приложением, поэтому я сделал:

 vi /home/ec2-user/.bash_profile 

и добавил:

 export PYTHONPATH=$PYTHONPATH:/opt/python/current/app 

и мои переменные env … теперь это работает! 🙂

Чтобы автоматически активировать virtualenv и иметь возможность использовать оболочку django, как только регистрируется через ssh, можно добавить:

 source /opt/python/run/venv/bin/activate cd /opt/python/current/app 

в .bash_profile 🙂

2 Solutions collect form web for “django-admin.py и путь python на EC2 Amazon Beanstalk”

Сообщение:

  File "manage.py", line 3, in <module> from django.core.management import execute_from_command_line ImportError: No module named django.core.management 

не потому, что ваше приложение не находится в PYTHONPATH, а потому, что оно не может найти ваше приложение django вообще. Значение вашего каталога сайтов-пакетов не в PYTHONPATH.

Попробуйте найти каталог сайтов-пакетов на вашем сервере, и это должно быть в PYTHONPATH. Я не использовал приложение python с Elastic Beanstalk, но я считаю, что он может использовать виртуальную среду python . В этом случае вам необходимо настроить виртуальную среду перед запуском python ./manage shell

Вы можете добавить option_name если вам нужно изменить PYTHONPATH или установить любую переменную среды в целом.

В .ebextensions/myapp-env.config (или независимо от вашего имени * .config):

 option_settings: - option_name: PYTHONPATH value: /opt/python/ondeck/app/myapp:$PYTHONPATH 
  • Загрузка асинхронного файла в Amazon S3 с помощью Django
  • Ajax Post Request to TastyPie ничего не делает
  • Вход в Django на Heroku не появляется
  • Ошибка Django: нет FlatPage соответствует заданному запросу
  • Каков формат, в котором пароли Django хранятся в базе данных?
  • GeoDjango: Как я могу получить расстояние между двумя точками?
  • Использование formset_factory в Django
  • Система наследования и администрирования модели Django
  •  
    Interesting Posts for Van-Lav

    Как хранить `pandas.DataFrame` в двоичном формате PANDAS-LOADABLE, отличном от` pickle`

    Вложенные инструкции if-else Python

    Как определить соответствующий формат strftime из строки даты?

    В Peewee у меня есть поле datetime по умолчанию datetime.datetime.now (). Но когда вставлено, требуется время, когда сервер был запущен. Зачем

    Импортированный модуль добавляет нежелательные записи. Как его можно подавить?

    Как создать массив numpy списков?

    Обнаружение зависания сокета без отправки или получения?

    Изучение парсера в python

    Как я могу написать asyncio сопрограммы, которые, возможно, действуют как обычные функции?

    как я могу найти и удалить наложенные фрагменты изображения из списка?

    Переопределение декоратора во время модульного теста на питоне

    Лучший способ добавить переменную окружения в ткань?

    В чем преимущество использования функции get для класса python?

    Python3, lxml и «Symbol not found: _lzma_auto_decoder» в Mac OS X 10.9

    Отправка изображений с использованием сокетов Python

    Python - лучший язык программирования в мире.