До сих пор мы мало говорили о Azure или Node.js в одном из моих блогов. Единственный пост, посвященный Azure, который я смог найти, был о том, что MS прекращает использование Azure Functions, использующих .NET Core 3.1, 3 декабря, начиная с июля. Я решил, что сегодня мы займемся этим вопросом. В сегодняшнем уроке мы рассмотрим, как развернуть приложение узла в Azure с помощью командной строки.
Необходимые условия: Node, NPM и Azure CLI
Прежде чем мы продолжим, вы должны убедиться, что у вас установлены node и NPM, а также что у вас установлен Azure CLI. Вы можете проверить, установлен ли у вас node, выполнив команду node --version
в терминале.
Шаг 1: Создайте приложение Node.js для развертывания
Для этого примера мы будем использовать Express Generator. Вы можете создать новое приложение, выполнив команду npx express-generator node-example --view ejs
.
Далее, если вы cd node-example && npm install
, вы перейдете в папку проекта и установите зависимости.
На этом этапе вы можете запустить сервер, просто выполнив npm start
.
Если вы хотите получить отладочную информацию, вы можете запустить DEBUG=node-example:* npm start
.
Если сервер запущен, вы можете увидеть вывод на http://localhost:3000/.
Шаг 2: Измените порт сервера
Как вы можете видеть выше, сервер использует порт 3000, но если вы откроете bin/www и найдете process.env.PORT
, вы можете изменить порт, который использует сценарий запуска.
Если мы собираемся развернуть его в Azure, нам, вероятно, следует изменить этот порт на 80.
Шаг 3: Развертывание в Azure
Находясь в папке проекта, вы можете развернуть проект, выполнив команду az webapp up --sku F1 --name <unique-project-name>
. Бит <unique-project-name>
должен быть значением, уникальным для всего azure и содержать только символы a-z, 0-9 и -. SKU F1
находится на их бесплатном уровне цен.
На этом этапе ваше приложение для узла запущено. Вы можете посмотреть демонстрационное приложение по адресу http://jws-node-example.azurewebsites.net.
Шаг 4: Перераспределение в Azure
Следующий естественный вопрос — как развернуть приложение после внесения в него изменений. Если мы посмотрим на routes/index.js, то в строке 6 переменная title
имеет значение «Express».
Если мы изменим это значение на «Flavortown», это должно изменить вывод на сайте. Чтобы сохранить изменения в Azure, можно воспользоваться командой терминала az webapp up
.
Вы заметите, что команда, которую мы использовали, не имела аргументов. Если вы заглянете в .azure/config в папке проекта, детали будут определены там. Если вам нужно что-то изменить, вы можете сделать это там.
Теперь на нашем демонстрационном сайте написано «Добро пожаловать в Flavortown».
У вас есть вопросы, комментарии или опасения? Видите, что я делаю что-то не так? Пожалуйста, не стесняйтесь оставлять комментарии ниже. Я ни в коем случае не являюсь экспертом в Node или Azure, но надеюсь, мы сможем помочь друг другу.
[ Cover photo by Arget on Unsplash ].