2012-11-02 4 views
0

Я пытаюсь развернуть основное приложение sinatra с heroku docs. Приложение, похоже, развертывается и запускается правильно, но я не вижу его. Что мне не хватает?Развернуть приложение Sinatra для heroku

# Gemfile 
source 'http://rubygems.org' 
gem 'sinatra' 

# config.ru 
require './hello' 
run Sinatra::Application 

# hello.rb 
require 'sinatra' 

get '/' do 
    "Hello World!" 
end 

Я затем запустить:

$ bundle install 
$ git init 
$ git add --all 
$ git commit -m "initial commit" 
$ heroku create 
$ git push heroku master 
$ heroku open 

Проблема заключается в том, все это я получаю это "Heroku | Нет такого приложения" ошибка. Затем я попробовать:

$ heroku restart 
$ heroku logs 

результат которого вы можете увидеть ниже:

2012-11-02T06:19:24+00:00 heroku[web.1]: Unidling 
2012-11-02T06:19:24+00:00 heroku[web.1]: State changed from down to starting 
2012-11-02T06:19:27+00:00 heroku[web.1]: Starting process with command `bundle exec rackup config.ru -p 38715` 
2012-11-02T06:19:31+00:00 app[web.1]: [2012-11-02 06:19:31] INFO WEBrick 1.3.1 
2012-11-02T06:19:31+00:00 app[web.1]: [2012-11-02 06:19:31] INFO ruby 1.9.2 (2011-07-09 [x86_64-linux] 
2012-11-02T06:19:31+00:00 app[web.1]: [2012-11-02 06:19:31] INFO WEBrick::HTTPServer#start: pid=2 port=38715 
2012-11-02T06:19:32+00:00 heroku[web.1]: State changed from starting to up 
+0

Иногда мне приходилось ждать после толчка, особенно для новых приложений. Как это сейчас? – iain

+1

Я точно следил за вашим кодом и, похоже, работал нормально. – sunnyrjuneja

+0

Хм, я попробую еще раз, может быть, героику все равно. –

ответ

0

Я попробовал эти те же самые шаги, прямо сейчас, и она работает просто отлично. Не уверен, что было раньше.

Прошлой ночью я изменил его:

# hello.rb 
require 'sinatra' 

class HelloApp < Sinatra::Base 
    get '/' do 
    "Hello World!" 
    end 
end 

# config.ru 
require './hello' 
run HelloApp 

, и она работала. Не знаю, почему, но так и было. Странный.

+0

У вас не было 'class HelloApp

+0

Основное приложение «hello world» в ссылке, которую я поставил наверху, не определяет класс, который наследуется от Sinatra :: Base в hello.rb, и он просто вызывает «run Sinatra :: Application» в config.ru, следовательно мое замешательство, когда оно не сработало. –

Смежные вопросы