Развертывание в пользовательском узле непрерывной доставки Azure
У меня есть приложение для узла, которое имеет как собственный встроенный интерфейс, так и API-интерфейс узла.
Я хочу иметь возможность просто запустить npm install для обеих папок, а затем просто запустить команду запуска "сервер узла" (node /server/index.js), чтобы запустить приложение узла.
Но я не могу понять задачи релиза, чтобы это произошло.
Я использую непрерывную доставку предварительного просмотра, которая подключается к визуальной студии онлайн
1 ответ
На мой взгляд, это не имеет ничего общего с непрерывной доставкой. Поскольку служба приложений Azure работает в Microsoft IIS, вам потребуется файл конфигурации IIS с именем web.config
и должен включать следующий раздел, чтобы соответствовать вашим требованиям:
<handlers>
<add name="iisnode" path="./node/server/index.js" verb="*" modules="iisnode"/>
</handlers>
Это указывает на то, что node/server/index.js
файл - это сайт node.js, который обрабатывается модулем iisnode.
<rewrite>
<rules>
<!-- First we consider whether the incoming URL matches a physical file in the /public folder -->
<rule name="StaticContent">
<action type="Rewrite" url="public{REQUEST_URI}"/>
</rule>
<!-- All other URLs are mapped to the node.js site entry point -->
<rule name="DynamicContent">
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="True"/>
</conditions>
<action type="Rewrite" url="./node/server/index.js"/>
</rule>
</rules>
</rewrite>
Эти правила перезаписи определяют, где должен находиться статический и динамический контент.
Для законченного web.config
файл вы можете проверить этот пост.