Как инициализировать приложение приложения koa node.js в IISNode (веб-сайты Azure)

В настоящее время мы перемещаем само размещаемое приложение koa в IISNode на веб-сайтах Azure.

При самостоятельном размещении мы инициализируем приложение, вызывая узел --harmony ./bin/application. Запросы затем переходят к./index.js.

Однако мы не смогли найти способ настроить IISNode для вызова "bin/application" во время инициализации.

Есть идеи? Спасибо

2 ответа

Не уверен, что это тот же сценарий, но я столкнулся с чем-то вроде этого, когда express.js начал использовать./bin/www в качестве точки входа для приложений express.js. Первоначально это сломало все, но теперь мы ищем запись "scripts" в package.json, чтобы сообщить Azure, как настроить IISNode для приложения. Для экспресс, он генерирует запись "скрипты", которая выглядит следующим образом:

"scripts": {"start": "node./bin/www"},

Когда Azure видит это, он генерирует файл web.config на сервере, который использует./bin/www для точки входа.

Итак... прежде всего, попробуйте добавить запись "scripts" в package.json, которая указывает на ваш файл./bin/application, и попробуйте развернуть ее в Azure. Надеюсь, это "просто работает". Если этого не произойдет, попробуйте добавить файл web.config в корень приложения, используя https://gist.github.com/Blackmist/8677359708fd30779c77 в качестве содержимого. Это должно указывать IISNode на файл./bin/application в качестве точки входа, и именно это должны автоматически генерироваться веб-сайтами Azure при обнаружении записи "scripts" в файле package.json.

Другая проблема, с которой вы столкнетесь, - это использование Node.js v0.11.13, который, по моему мнению, не включен в веб-сайты Azure по умолчанию, и передача ключей --harmony. http://azure.microsoft.com/en-us/documentation/articles/nodejs-specify-node-version-azure-apps/ содержит раздел о включении версии node.js в качестве части вашего веб-сайта. В файле iisnode.yml вы хотели бы иметь строку, подобную следующей:

nodeProcessCommandLine: d: \ home \ site \ wwwroot \ bin \ node.exe --harmony

Я считаю, что это должно сделать эту работу.

Вы можете настроить собственные сценарии развертывания для веб-сайтов Azure.

Этот блог содержит подробности о том, как его использовать: http://blog.amitapple.com/post/38417491924/azurewebsitecustomdeploymentpart1/

Другие вопросы по тегам