2016-04-07 3 views
1

Я хотел бы выполнить Джанго перенести команду на лазурной службе приложения в моем приложении,Как запустить Джанго manage.py команды на Лазурном App службе

$ python manage.py migrate 

, но я понятия не имею, как это сделать.

+0

https://docs.djangoproject.com/en/1.9/topics/migrations/ – Steven

+0

@Steven Спасибо, но мне нужно знать, как выполнить миграцию в лазурном контексте. – Cody

ответ

2

Как обычный сценарий, мы используем виртуальную среду для скриптов python-обработчиков, как показано на рисунке official guide. Если это так, это может вызвать исключения, если мы используем среду исполнения Azure Python для запуска команд из-за отсутствия зависимостей.

Обычно мы можем использовать сайт Kudu Console вашего веб-приложения или расширение Visual Studio Online для изменения скриптов или выполнения команд.

сайт Куда консоль:

  1. Вы можете войти на сайте Куды консоли которого является URL https://<your_web_app_name>.scm.azurewebsites.net/DebugConsole
  2. кд к d:\home\site\wwwroot, который является корневым каталогом вашего приложения.
  3. запустить команду env\Scripts\python.exe manage.py migrate (предположим, что виртуальная среда является env в корневом каталоге)

Visual Studio Интернет расширение:

  1. Установите VSO extensio, вы можете передать ответ How to install composer on app service?
  2. Войдите на сайт редактора VSO, найдите кнопку open console, чтобы открыть командлет для команд, вы можете найти эту кнопку в левой панели навигации. enter image description here

Любые дальнейшие заботы, пожалуйста, не стесняйтесь, дайте мне знать.

+0

Kudo - отличный инструмент. Спасибо за ваш обмен. Я не знаю этого раньше, и я получил это видео для быстрого ввода: https://azure.microsoft.com/en-us/documentation/videos/super-secret-kudu-debug-console-for-azure- веб-сайты / – Cody

1

Вы можете запустить код Python внутри своего веб-приложения Azure. Вы должны убедиться, что Python включена для приложения, хотя:

enter image description here

Тогда - вы, вероятно, может обернуть вызов python manage.py migrate в пакетном сценарии и вызвать его в задаче запуска для вашего веб-приложение.

задачи запуска описаны здесь: https://azure.microsoft.com/en-us/documentation/articles/cloud-services-startup-tasks/ и то, что она сводится к тому, что вы должны связать пакетный скрипт с приложением, а также изменить ServiceDefinition.csdef и добавить задачу запуска в XML следующим образом:

<Startup> 
    <Task commandLine="Startup.cmd" executionContext="limited" taskType="simple" > 
     <Environment> 
      <Variable name="MyVersionNumber" value="1.0.0.0" /> 
     </Environment> 
    </Task> 
</Startup> 
Смежные вопросы