Развертывание Rails Engine на Heroku - PullRequest
2 голосов
/ 24 февраля 2012

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

FIXED

Мне пришлось добавить config.ru и Procfile в корневой каталог моего движка, чтобы heroku знала, что это приложение rails.

Спасибо, Аджай

Ответы [ 2 ]

0 голосов
/ 26 июля 2015

Для редактирования состояний вопроса необходимы config.ru и Procfile. Я просто скопировал config.ru из приложения Rails и изменил путь:

# This file is used by Rack-based servers to start the application.

require ::File.expand_path('../test/dummy/config/environment', __FILE__)
run Rails.application

Что касается Procfile, будет работать следующее:

web: bundle exec rackup -p $PORT

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

Чтобы получить правильные журналы на Heroku, добавьте следующее к Gemfile

gem 'rails_12factor', group: :production

Компиляция активов не будет работать, если вы не определите задачу assets:precompile (согласно https://devcenter.heroku.com/articles/ruby-support#rails-4-x-applications-compile-phase).

Я только что добавил к двигателю Rakefile:

namespace :assets do
  desc 'Precompile assets within dummy app'
  task :precompile do
    Dir.chdir('test/dummy') do
      system('bundle exec rake assets:precompile')
    end
  end
end

Я также отключил сжатие JS (или вы можете добавить uglifier gem в Gemfile).

0 голосов
/ 24 февраля 2012

Я полагаю, это больше зависит от того, как вы создали свой двигатель. Если вы можете запустить его автономно локально, он будет так же хорошо работать на Heroku - в Heroku нет ничего, что могло бы усложнить запуск вашего кода, кроме нормальных ограничений

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...