Добрый день, это канал посвященный небольшим инструкциям, которые я пишу для себя и людей, которые являются начинающими разработчиками.
Для того, чтобы выложить свое node js приложение нам необходимо воспользоваться бесплатным хостингом heroku.
Подготовка
Регистрация
Сначала необходимо зарегистрироваться на heroku. Для этого укажи свои данные и подтвердите почту. Войдите в свой аккаунт и следуйте дальнейшим инструкциям.
Создание проекта
Переходим по ссылке и создаем новый проект, выбирает create new-app:
Вводим имя, выбираем расположение приложения и жмем кнопку:
Установка утили heroku
Устанавливаем heroku в нашу консоль. Для этого переходим по ссылке и выбираем любой удобный для вас способ. Далее проверяем работу нашей утилиты, написав в консоль:
heroku login
Нам свами нужна эта строчка (снизу), если она есть, то все хорошо, если ее нет, то перезагрузите компьютер и попробуйте снова.
heroku: Press any key to open up the browser to login or q to exit
Нажимаем любую клавишу и авторизируемся на сайте и видим строку:
Logging in... done
Деплой проекта
Подготовка проекта
Открываем папку с проектом. Создаем в ней файл Procfile, где пишем "web: " + скрипт запуска для нашего приложения, у меня это выглядит так:
Далее открываем package.json, где указываем engines и указываем версию node js и npm, вот так:
Для того, чтобы узнать версию node js напиши в консоль "node - v", для npm напишите "npm -v"
Теперь давайте откройте страницу вашего проекта на вкладке deploy откройте консоль в папке вашего проекта и напишите 2 эти команды(у всех команды свои, берите у себя, а не со скрина):
После написания команд вы увидите такой текст, только без варнингов
Теперь убедитесь, что ваш сервер запускается на верном порте, порт должен быть именно process.env.PORT:
Деплой
Теперь осталось только задеплоить, для этого пишем 3 команды:
git add .
git commit -am "init"
git push heroku master
После этого вы увидите много логов в консоли и потом вы увидите заветную ссылку.
При переходе по ссылке будет доступен ваш сервер:
Также у меня есть статья, как интегрировать этот деплой прямо из gitlab с конкретной ветки.
Спасибо за прочтение статьи, подписывайтесь и оставляйте комментарии, о чем еще написать.