Я скопировал пример Procfile из документации heroku и пытаюсь использовать foreman для локального запуска приложения Sinatra.

Каждый раз, когда я пробую foreman start, получаю следующее:

~/Repos/website ➜ foreman start
14:04:43 web.1  | started with pid 2916
14:04:44 web.1  | /usr/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find bundler (>= 0) amongst [bigdecimal-1.1.0, daemons-1.1.9, eventmachine-0.12.10, io-console-0.3, json-1.5.4, minitest-2.5.1, rack-1.4.1, rack-protection-1.2.0, rake-0.9.2.2, rdoc-3.9.4, rubygems-update-1.8.24, sinatra-1.3.3, thin-1.4.1, tilt-1.3.3, yard-0.8.2.1] (Gem::LoadError)
14:04:44 web.1  |   from /usr/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
14:04:44 web.1  |   from /usr/lib/ruby/site_ruby/1.9.1/rubygems.rb:1231:in `gem'
14:04:44 web.1  |   from /home/nicolas/.gem/ruby/1.9.1/bin/bundle:22:in `<main>'
14:04:44 web.1  | exited with code 1
14:04:44 system | sending SIGTERM to all processes
SIGTERM received

Это содержимое моего Procfile:

web: bundle exec thin start -R config.ru -e $RACK_ENV -p $PORT

Я пробовал это с rbenv и без него. В настоящее время у меня установлен Ruby через менеджер пакетов Arch, pacman. У меня тоже установлен комплектовщик. Я уже пробовал ответы, перечисленные здесь и здесь. Любая помощь могла бы быть полезна.

0
Nick McCurdy 25 Авг 2012 в 02:09
1
Вы пытались добавить в свой Gemfile бригадир и запустить его с помощью команды "bundle exec foreman start"?
 – 
alno
25 Авг 2012 в 10:42
Хорошая идея, раньше я этого не делал. Я добавил его сейчас, но получаю следующую ошибку: gist.github.com/f2db5ec84d29043be4b1. Я попробовал другое предложение из центра разработки Heroku и заменил свой Procfile на web: bundle exec rackup config.ru -p $PORT, но по какой-то причине мастер теперь просто сообщает мне мой PID и зависает. : \ Как ни странно, когда я нажимаю ctrl-c, я вижу короткий тонкий вывод (тонкого запуска). Похоже, это может быть проблема с маршрутизацией stdout.
 – 
Nick McCurdy
25 Авг 2012 в 23:26

1 ответ

Лучший ответ

Подождав некоторое время, обновив драгоценные камни и попробовав еще раз, теперь я заставил это работать, когда Procfile содержит следующее:

web: bundle exec rackup

0
Nick McCurdy 19 Ноя 2012 в 12:40