Вы разработчик Nodejs, которому нравится разрабатывать замечательные приложения в качестве хобби, но вам нужно место, чтобы это продемонстрировать?

Вы очарованы Azure и хотите попробовать?

Вы тоже поражены конфигурациями, которые предлагает Azure?

Что ж ... сегодня я объясню очень простой способ запустить ваше приложение в Azure за несколько щелчков мышью.

Я опубликовал статью о бесплатном развертывании крутого нодового приложения на Heroku с Github. Но теперь, когда мы решили создать супер крутое приложение Node, мы будем использовать еще один горячий облачный сервис на рынке.

Хватит болтовни ... А теперь перейдем к делу.

Шаг 1. Создайте классное приложение Node

Давайте сначала создадим это супер классное приложение Node.

Создайте папку на своем локальном компьютере и дайте ей имя (по вашему выбору), например MySuperCoolApp.

Добавьте файл с именем package.json и вставьте содержимое ниже. Этот файл - основная информация о нашем пакете. (Это также можно создать, набрав команду npm init и приняв все настройки по умолчанию.)

{
"name": "supercoolnodeapp",
"version": "1.0.0",
"description": "super node app ",
"main": "app.js",
"scripts": {
"start": "node app.js"
},
"repository": {
"type": "git",
"url": ""
},
"author": "",
"license": "ISC",
"bugs": {
"url": ""
},
"homepage": ""
}

Обратите внимание на одно очень важное изменение:

"start": "node app.js"

После развертывания Azure выполнит эту команду, чтобы запустить ваше приложение.

Добавьте файл app.js и вставьте приведенный ниже код. Это будет отправной точкой нашего приложения.

const http = require('http');
const port=process.env.PORT || 3000
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/html');
res.end('<h1>Hello World</h1>');
});
server.listen(port,() => {
console.log(`Server running at port `+port);
});

Этот код открывает порт на локальном сервере и обслуживает некоторый HTML.

Обратите внимание на самый важный блок кода:

const port=process.env.PORT || 3000

Это важно, если вы хотите развернуть приложение в облаке. Сервер приложений запускается через случайный порт в облаке. Если вы жестко закодируете номер порта, как во всех руководствах по началу работы, и развернете в облаке, конкретный номер порта может быть недоступен. Приложение никогда не запустится. Поэтому лучше получить номер порта, назначенный экземпляром облака, и запустить HTTP-сервер.

Сохраните файл и выполните следующую команду в окне командной строки (которое открыто внутри папки):

node app.js

При этом Node запустит сервер и покажет следующее сообщение:

Теперь, если мы откроем в браузере http: // localhost: 3000 /, мы увидим следующее:

Прохладный! Мы создали простое, но очень крутое приложение Nodejs.

ШАГ 2. Отправьте на GitHub

Теперь хочу загрузить наш код на GitHub. Таким образом, мы сможем редактировать наш код из любого места, а также мгновенно развертывать зафиксированные изменения в облаке.

Давайте создадим репозиторий на GitHub, нажав New Repository.

Дайте ему имя, некоторое описание и нажмите Создать репозиторий:

GitHub создаст репозиторий и предоставит вам несколько команд, которые вы можете запускать локально, чтобы вы могли клонировать свою локальную папку с репозиторием GitHub.

Откройте командную строку в своем приложении, где находится файл package.json. В командной строке выполните следующие команды в этой последовательности.

  1. Инициализируйте репозиторий Git на корневом уровне:
git init

2. Добавьте все файлы в локальный Git (промежуточный). Обратите внимание на последнюю точку:

git add .

3. Зафиксируйте свои изменения в локальном Git:

git commit -m “first commit”

4. Ссылка на ваш репозиторий GitHub. (Измените URL-адрес, чтобы он указывал на ваш репозиторий.)

git remote add origin https://github.com/rramname/MySuperCoolNodeApp.git

5. И внесите сдачу:

git push — set-upstream origin master

В командной строке вы должны увидеть сообщения, подобные приведенным ниже.

Теперь, если вы откроете GitHub и обновите репозиторий, вы должны увидеть код.

ШАГ 3. Теперь займемся Azure

В этом упражнении предполагается, что у вас настроена и готова к использованию подписка Microsoft Azure . Если у вас ее нет, вы можете создать ее бесплатно, перейдя на веб-сайт Microsoft Azure. Он попросит вас предоставить данные вашей кредитной карты. С вашей карты никогда не будет снята оплата, если вы не приобретете платные услуги (что не требуется для этой демонстрации).

Откройте portal.azure.com и войдите со своими учетными данными.

Нажмите «Создать новый ресурс» в левом верхнем углу. Введите «веб-приложение» в поле поиска, чтобы получить требуемый тип ресурса, и нажмите Enter.

Выберите веб-приложение из результатов поиска.

И нажмите кнопку «Создать».

Нас попросят предоставить основную информацию для этого приложения:

Первое поле - это имя вашего приложения. Что очень просто, так как это SuperCoolNodeApp :)

Второй вариант - это подписка. Я зарегистрировался для подписки «Pay As You Go», так как я уже использовал бесплатную пробную версию. Вы можете выбрать план бесплатной подписки здесь.

Далее идет группа ресурсов. Это логическая группировка ваших приложений в Azure. Вы можете создать новое для этого приложения или использовать существующие. Я создал новое приложение для этого приложения под названием SuperCoolNodeApp.

Затем, в конце концов, вам нужно будет выбрать тарифный план приложения. Я создал бесплатный план под названием «План тестирования». Вы можете создать новый план, если у вас его еще нет, но убедитесь, что вы выбрали бесплатную версию. При выборе Azure автоматически выбирает уровень S1, который НЕ БЕСПЛАТНЫЙ. Убедитесь, что вы изменили его на бесплатный план для демонстрации (конечно, если вам нужны более высокие возможности, вычислительная мощность и т. Д., Перейдите на платные планы.)

Нажмите Создать.

Azure поставит в очередь ваш запрос на создание приложения с выбранным вами планом обслуживания и покажет вам небольшое уведомление вверху. Создание приложения не займет много времени. Если вы обновите свою страницу через минуту или две, вы сможете увидеть приложение и план обслуживания, которые были созданы во всех ресурсах.

Теперь щелкните по нему, чтобы просмотреть подробную информацию о приложении, которое мы только что создали.

Он показывает такие детали, как подписка, на которой работает план, статус «Выполняется», идентификатор подписки, местоположение на сервере, на котором приложение размещено в «Центральной части США», и некоторые сведения о FTP. Но самое главное здесь - это URL. Это будет URL-адрес нашего приложения в облаке.

А теперь займемся этим….

Небольшое предупреждение о спойлере :) В этом разделе мы настроим стратегию развертывания для нашего приложения.

Прокрутите вниз и нажмите Параметры развертывания.

Щелкните Настроить необходимые параметры и выберите GitHub. Он должен показать вам экран ниже.

Щелкните Выбрать проект. Это должно показать вам все репозитории в вашей учетной записи GitHub.

Если вы делаете это впервые, вам нужно будет предоставить Azure авторизацию для доступа к вашей учетной записи GitHub.

Здесь вы выберете тот MySuperCoolNodeApp, который вы отправили на GitHub.

Затем мы можем выбрать ветку, из которой хотим развернуть.

На данный момент у меня есть только мастер, поэтому я оставляю вариант по умолчанию.

Вот и все. Щелкните ОК.

Azure позаботится о развертывании приложения. Он даже покажет вам это небольшое уведомление о том, что Azure готовится выполнить эту работу.

Когда все будет готово (что на самом деле не должно занять так много времени), снова нажмите «Параметры развертывания». Вы должны увидеть последнее развертывание.

Если щелкнуть запись, Azure даже покажет журнал события развертывания.

Прохладный. Теперь, если вы откроете свое приложение, перейдя по URL-адресу, указанному в разделе обзора https://supercoolnodeapp.azurewebsites.net/, вы ожидаете увидеть сообщение Hello World, но вместо этого увидите ошибку ниже.

А ... что не так? Журналы показывают, что приложение было развернуто, ошибок нет, но приложение не работает. Это тайна.

На портале Azure необходимо выполнить одну небольшую настройку, чтобы помочь Azure рассматривать его как приложение Nodejs и запускать его соответствующим образом.

Откройте «Настройки приложения», прокрутите вниз до раздела «Настройки приложения» и добавьте следующую запись.

App setting name : WEBSITE_NODE_DEFAULT_VERSION
Value: 8.9.0

По сути, он говорит Azure использовать эту версию Node и открыть веб-сайт.

Нажмите "Сохранить" вверху.

Теперь, если вы перейдете по URL-адресу https://supercoolnodeapp.azurewebsites.net/

УУХУ !!! Вот и все. Мы только что запустили наше супер-крутое приложение Node в Azure.

Поздравляю !! Теперь каждый раз, когда вы вносите какие-либо изменения в свое приложение и отправляете его на GitHub, Azure будет отслеживать их и выполнять непрерывное развертывание.

P.S: Если вы когда-нибудь создадите приложение круче моего :), поделитесь, пожалуйста.

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

Я пишу только о программировании и технологиях в Твиттере.

Повеселись!!