Рубрики
Без рубрики

Как развернуть приложение и базу данных узла в Heroku

Heroku – это облачная, полностью управляемая платформа как услуга (PAAS) для строительства, бега и управления приложениями. Платформа является гибкой и разработана с помощью поддержки DX для вас и предпочтительным стилем разработки вашей команды, и помочь вам оставаться сосредоточенным и продуктивным. Разработчики, команды и предприятия всех размеров используют

Автор оригинала: Bolaji Ayodeji.

Heroku – это облачная, полностью управляемая платформа как услуга (PAAS) для строительства, бега и управления приложениями. Платформа является гибкой и разработана с помощью поддержки DX для вас и предпочтительным стилем разработки вашей команды, и помочь вам оставаться сосредоточенным и продуктивным.

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

С функциями, такими как Heroku Runtime, Heroku Postgres (SQL), Heroku Redis, Add-ons, клипы данных, метрики приложений, смарт-контейнеры, поддержку сорта предприятия, интеграция GitHub и многое другое, Heroku предоставляет разработчикам свободу сосредоточиться на их основном продукте Без отвлечения обслуживания серверов, оборудования или инфраструктуры.

Одним из основных функций Heroku является развертывание, управление и масштабирование приложений с вашими любимыми языками [узел, Ruby, Python, Java, PHP, GO и многое другое]. В этой статье я покажу вам, как взять существующее приложение Node.js и развернуть его в Heroku – все от создания вашей учетной записи Heroku, чтобы добавить базу данных в ваше развернутое приложение.

Предпосылки

В моей предыдущей статье я писал о « построить Slackbot с Node.js и slackbots.js », и я пообещал написать последующую статью, чтобы показать, как провести расслоение на Heroku, Zeit или NetLify и Опубликуйте его в магазин Slack Apps. Ну, это последующая статья, но без участия «публикации на слабые приложения». Мы покроем это в другой статье.

Я предполагаю, что у вас уже есть/знают следующее уже:

Бонус

Если у вас нет NPM, узел, и Heroku CLI, уже установлена учетная запись Heroku уже, вот быстрый бонус [Да, пожалуйста:)].

Установка NPM и узла

  • Node.js Программа выполнения JavaScript построена на HOROMES V8 JavaScript Engine Отказ
  • NPM Менеджер пакета для Node.js. Проект с открытым исходным кодом, созданный, чтобы помочь разработчикам JavaScript легко поделиться упакованными модулями кода.

Вы можете просто скачать Node.js здесь Отказ Не волнуйтесь, NPM поставляется с Node.js, поэтому это устанавливает оба ✨

Создание бесплатного аккаунта Heroku

Пожалуйста, голова здесь и заполните форму регистрации. Это довольно просто.

Установка Heroku Cli.

Интерфейс командной строки Heroku (CLI) позволяет легко создавать и управлять своими приложениями Heroku прямо из терминала. Это неотъемлемая часть использования Heroku. [Ну, вы можете решить использовать функцию интеграции GitHub и панель инструментов Heroku Но да, вы должны научиться использовать CLI] Heroku CLI требует Git, популярная система управления версиями. Если у вас еще нет Git, я написал Эта статья чтобы помочь вам.

Heroku CLI для Mac OS

brew tap heroku/brew && brew install heroku

или Загрузите установщик Отказ

Heroku Cli для Ubuntu

sudo snap install --classic heroku

Heroku CLI для Windows

Загрузите установщик для 64-битный или 32-битный Отказ

Другие методы установки

Пожалуйста, прочитайте это Отказ

Начало работы с Heroku Cli

  • Проверьте свою установку
heroku --version

Heroku/7.30.1 Linux-X64 Node-V11.14.0

  • Войдите в свою учетную запись Heroku

Есть два способа сделать это:

  • Web на основе auth.
heroku login

Следуйте инструкциям и вхожу в систему через ваш веб-браузер, затем вернитесь к вашему терминалу.

  • CLI Auth

Это более безопасный вариант, поскольку он сохраняет ваш адрес электронной почты и токен API для ~/.netrc для будущего использования.

heroku login -i

Развертывание вашего приложения Node.js

Я предполагаю, что вы уже построили Slackbot. Если у вас нет, пожалуйста, клонировать Готовый проект Отказ

Проект представляет собой простым расслоением, который отображает случайные вдохновляющие цитаты и шуты для разработчиков/дизайнеров.

git clone https://github.com/BolajiAyodeji/inspireNuggetsSlackBot.git && cd inspireNuggetsSlackBot

Теперь давайте разверним наше приложение к Heroku ??. Я покажу вам два способа сделать это:

Развертывание через Geroku Git

Это сделано через Heroku CLI.

☑️ контрольный список
  • Укажите версию Node.js, которые будут использоваться для запуска вашего приложения на Heroku в вашем Package.json файл.
"engines": {
    "node": "10.16.0"
  },
  • Укажите свой начальный скрипт. Просто создайте Procfile (без какого-либо расширения файла) и добавьте
web: node index.js

Heroku First ищет этот Proffile. Если никто не найден, Heroku попытается запустить веб-процесс по умолчанию через сценарий запуска в вашем Package.json Отказ

  • Начните свое приложение локально, используя локальную команду Heroku, чтобы убедиться, что все работает нормально
heroku local web

Ваше приложение теперь должно работать на http://localhost: 5000 Отказ

  • Не забудьте .gitignore.
/node_modules
.DS_Store
/*.env
? Давайте развернумся

Как это работает, у вас уже есть проект, работающий на местном месте, и вы уже оттолкнулись к GitHub.

  • Беги Heroku Создайте

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

  • Сейчас беги Git Push Heroku Master

Это волшебная команда, он толкает ваше приложение к Heroku, устанавливает его там и запускает его на выделенном домене.

В приведенном выше примере это https://lit-cove-58897.herokuapp.com/

Вы всегда можете внести изменения в ваши настройки приложения и домены в вашем Heroku Dashboard

  • Теперь посетите свое приложение в своем браузере
heroku open
  • Вы также можете просмотреть информацию о вашем запуске приложения, используя одну из команд регистрации. Это очень полезно при ошибках отладки.
heroku logs --tail

Развертывание через Github Integration

Вы можете настроить интеграцию GitHub на вкладке «Развертывание приложений» в Heroku Dashboard Отказ

☑️ контрольный список
  • Все предыдущие контрольные списки применяются здесь – убедитесь, что у вас уже есть приложение для GitHub
? Давайте развернумся

Как работает этот метод, это то, что вы толкаете весь проект в GitHub и интегрируете его в Heroku. Каждый раз, когда вы нажимаете, это развертывается из GitHub в Heroku. Довольно круто верно?

  • Войдите в свою приборную панель Heroku и создайте новое приложение
  • Выберите имя вашего приложения и региона

Теперь ваше приложение успешно было создано

  • Перейдите на вкладку «Развертывание» и прокрутите «|» Метод развертывания раздел
  • Нажмите на Подключиться к Github кнопка
  • Теперь у вас есть Подключиться к разделу GitHub Поиск репозитория и развертывания.
  • Теперь ваше приложение было успешно развернуто

Автоматическое развертывание

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

  • Прокрутите до Автоматическое развертывание раздел

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

Теперь каждый толчок в Мастер (или филиал, которую вы выбрали), развернут новую версию этого приложения.

Node.js buildpack.

В Heroku Buildpacks являются сценариями, которые работают, когда ваше приложение развернуто. Они используются для установки зависимостей для вашего приложения и настроить среду.

После развертывания вашего приложения убедитесь, что вы добавляете Node.js Buildpack в ваш проект.

  • Перейти к Настройки и прокрутите до Секция Buildpack
  • Нажмите на Добавить Buildpack Кнопка и выберите Node.js в всплывающем модальном модале.
  • Теперь новый конфигурация Buildpack будет использоваться, когда это приложение будет следующим развертываемым. Сделайте некоторые изменения в ваше приложение и нажмите на GitHub – он автоматически развернут.

Добавление базы данных в ваше развернутое приложение

Add-на рынке Heroku имеет большое количество магазинов данных, от Redis и MongoDB поставщиков, до Postgres и MySQL.

Heroku предоставляет три удаленные данные для всех клиентов в форме надстройки:

Писать об этом три сделает эту статью слишком долго. Это довольно просто, и я добавлю некоторые ссылки на документы Heroku.

Заключение

Каждая учетная запись Heroku выделяется пул свободных часов Dyno. Heroku (Free) Dynos отлично подходит для проведения приложений и личных проектов. Недостаток, однако, в том, что ваше приложение заснет, если он не получает веб-трафик в течение 30 минут:(.

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

Вот некоторые рассмотрены:

Опыт Heroku предоставляет услуги, инструменты, рабочие процессы и поддержку полиглота – все, что предназначено для повышения производительности разработчика. Еще можно использовать Heroku, и я надеюсь, что вы изучите больше и построить удивительные вещи с Heroku.

Если вы студент, пожалуйста, зарегистрируйтесь на Github Student Developer Pack Чтобы получить один бесплатный Хобби Дино до двух лет.

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

Оригинал: “https://www.freecodecamp.org/news/how-to-deploy-a-node-application-and-database-to-heroku/”