Heroku — это платформа облачных приложений, разработанная для того, чтобы избавить администрацию сервера от проблем. Вы просто создаете свое приложение, отправляете его в Heroku через Git и отдыхаете. А как насчет развертывания приложения Sinatra? Давайте посмотрим…
Если вы последовали моему посту о создании приложения, управляемого данными, с помощью Sinatra, вы, возможно, будете готовы к развертыванию. Поскольку Sinatra является приложением Ruby, его развертывание не так просто, как, скажем, приложение PHP, но все же не сложно.
Начало работы с Синатрой …
Если вы только начинаете с Синатры, вы можете найти этот пост полезным. Если вы переходите на Sinatra из PHP, я написал статью для Rubysource, в которой показано, как создать приложение для блога с помощью Sinatra.
Вам понадобится (бесплатная) учетная запись в Heroku .
Предполагая, что вы довольны своим приложением локально, следующее, что нужно сделать, это убедиться, что у вас есть пара файлов:
- Gemfile
- config.ru
Gemfile, который я описал в посте выше, включает ссылки на все гемы Ruby, используемые в приложении:
source :rubygems gem 'sinatra' gem 'rdiscount' gem 'data_mapper' gem 'dm-migrations' gem 'pony' gem 'dm-postgres-adapter', :group => :production gem 'dm-sqlite-adapter', :group => :development group :production do gem 'pg', '0.14.1' end
Вам могут не понадобиться некоторые из них: rdiscount и Pony, например. Я буду обсуждать это в следующем посте. Обратите внимание на группы по производству и развитию. Heroku не поддерживает Sqlite.
Sinatra — это приложение Rack , но у Heroku с этим нет проблем. Нам просто нужен файл, чтобы объяснить, как мы хотим, чтобы наше приложение работало:
В config.ru вам необходимо следующее:
require './main' run Sinatra::Application
Вы развертываете в Heroku через Git , систему управления исходным кодом. Вы можете инициализировать Git-репозиторий из командной строки:
git init
Установите драгоценный камень Heroku
Вам также понадобится драгоценный камень Heroku:
gem install heroku
SSH ключи
Вам нужно будет создать ключи SSH. Вы можете узнать, как это сделать здесь
Пока вы находитесь в командной строке, вам необходимо подключить свои ключи к Heroku для безопасной связи между вашим компьютером в Heroku:
heroku keys:add
Вам будет предложено добавить учетные данные, с помощью которых вы создали свою учетную запись Heroku.
Создать приложение Heroku
Вернемся к командной строке:
heroku create nameofapp
Где nameofapp — это то, что вы хотите назвать для своего приложения, имея в виду, что Heroku создаст ваше приложение с таким URL-адресом: nameofapp.herokuapp.com.
Затем, предполагая, что вы зафиксировали свои последние обновления, вы можете сделать:
git push heroku master
Вы увидите, как Heroku получит push, сожмет файлы, установит необходимые гемы Ruby, а затем, если повезет, развернет ваше приложение.
Все, что вам нужно сделать сейчас, это продолжить разработку приложения, коммит и толчок Git к Heroku для развертывания.