Я не могу получить свое приложение, чтобы успешно начать работу в Heroku. Вот основы:Rails Unicorn Web Server не начнется на Heroku
- Рубин 1.9.3p392 (когда я бегу рубин -v в моем Dev терминале это то, что возвращается, однако журналы Heroku, кажется, указывают Руби 2.0.0)
- Rails 3.2.13
- Unicorn Web Server
- Postgresql DB
Я развертывается мое приложение Heroku, но получение «произошла ошибка в приложении, и ваша страница не может быть обслужен.»
Вот заключительные записи в журнале Heroku:
+00:00 app[web.1]: from /app/vendor/bundle/ruby/2.0.0/bin/unicorn:23:in `<main>'
+00:00 heroku[web.1]: Process exited with status 1
+00:00 heroku[web.1]: State changed from starting to crashed
Когда я пытаюсь запустить Heroku пс, я получаю:
=== web (1X): `bundle exec unicorn -p $PORT -c ./config/unicorn.rb`
web.1: crashed 2013/06/22 17:31:22 (~ 6m ago)
Я думаю это возможно проблема, вытекающие из этого line в моем приложении/config/application.rb
ENV.update YAML.load(File.read(File.expand_path('../application.yml', __FILE__)))
T его строка полезна в dev для чтения моих переменных среды из моего файла application.yml. Однако для целей безопасности я gitignore это из моего репо и вижу, что журналы Heroku жалуются, что этот файл не найден. Для производства, я поставил свои переменные окружения в Heroku с помощью:
heroku config:add SECRET_TOKEN=a_really_long_number
Вот мое приложение/Config/unicorn.rb
# config/unicorn.rb
worker_processes Integer(ENV["WEB_CONCURRENCY"] || 3)
timeout 15
preload_app true
before_fork do |server, worker|
Signal.trap 'TERM' do
puts 'Unicorn master intercepting TERM and sending myself QUIT instead'
Process.kill 'QUIT', Process.pid
end
defined?(ActiveRecord::Base) and
ActiveRecord::Base.connection.disconnect!
end
after_fork do |server, worker|
Signal.trap 'TERM' do
puts 'Unicorn worker intercepting TERM and doing nothing. Wait for master to send QUIT'
end
defined?(ActiveRecord::Base) and
ActiveRecord::Base.establish_connection
end
А вот мой PROCFILE
web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb
И мое приложение /config/unicorn.rb и настройки параметров Procfile исходят от https://devcenter.heroku.com/articles/rails-unicorn
Основано на некотором IRC я установил Фигаро, но, увы, это не решило проблему.
Если вы хотите увидеть полное приложение, он размещен на сайте: https://github.com/mxstrand/mxspro
Если у вас есть указания на то, может быть неправильно или как я мог бы устранить в дальнейшем я буду очень признателен. Спасибо.
Heroku недавно изменен с помощью Ruby, 2.0.0 по умолчанию для новых приложений.Чтобы контролировать это, добавьте 'ruby '1.9.3'' в свой Gemfile. –