Как профессионально развернуть приложения rails на Heroku.
Настройка Heroku
Heroku - это платформа и поставщик услуг, теперь принадлежащая Salesforce. Хотя Heroku изначально создавался как платформа Ruby, теперь он позволяет развертывать приложения на нескольких языках, включая Node. Heroku предлагает надежный набор плагинов и модулей, которые позволяют настраивать и интегрировать ваше приложение. Он использует Git в качестве механизма развертывания и поэтому действительно хорошо работает как часть более крупного конвейера развертывания. У него отличный уровень бесплатного пользования. Есть хороший веб-интерфейс для взаимодействия с вашим приложением, но, поскольку мы работаем над конвейером развертывания, командная строка будет нашим лучшим другом.
Для работы с Heroku вам понадобится heroku-cli
, который можно скачать здесь. Затем вам понадобится учетная запись, просто перейдите на H eroku и зарегистрируйтесь, не волнуйтесь, это бесплатно. Вы можете бесплатно разместить 5 приложений на Heroku без кредитной карты. После того, как вы закончите регистрацию и heroku-cli
, вы можете войти в систему из командной строки.
Это откроет окно браузера, вы можете указать свои данные для входа в систему, и вы закончили настройку Heroku в командной строке.
Настройка приложения
Для развертывания мы будем использовать существующее приложение rails api, репозиторий вы можете найти здесь. Если у вас есть собственное приложение, вы можете попробовать и его. Перед развертыванием важно отметить, что Heroku не поддерживает sqlite3, который по умолчанию поставляется с Rails, поэтому вместо этого используйте pg для производства. Обязательно поместите свой репозиторий на github, поскольку Heroku использует git в качестве механизма развертывания.
Развертывание
После того, как вы выполнили вышеуказанные шаги и убедились, что ваше приложение нормально работает в среде разработки, пора приступить к производству вашего приложения. Выполните следующие действия, чтобы выполнить плавное развертывание:
- heroku create: создает новое приложение на Heroku с удаленным heroku по умолчанию. Если вы хотите изменить пульт на что-то значимое, например производство или постановку, вы можете сделать это с помощью
--remote production
. - git push heroku master: отправляет основную ветку в Heroku,
heroku
вот удаленный, вы можете заменить его своим удаленным именем. - heroku run rails migration: выполняет миграцию Heroku.
Это создаст ваше приложение, для дальнейшего развертывания вы можете просто отправить свои основные ветки в Heroku и выполнить миграции. Вот шаги, изображенные на картинке:
Заключение
После того, как вы выполните начальные шаги, развертывание не займет много времени. Вот каким должно быть хорошее развертывание, но по мере того, как размер вашего приложения увеличивается и у вас появляется больше вещей, о которых нужно позаботиться, есть некоторые инструменты, которые облегчают вашу жизнь, например Capistrano
, который автоматизирует этот процесс, чтобы помочь вам в вашем процессе.