sinatra 앱을 배포 할 때 heroku가 신비한 오류를 생성하는 것으로 나타났습니다. 그것은 로컬 잘 작동, 사실, 그것은뿐만 아니라 Heroku가에 잘 실행 -하지만이 오류는 Heroku가 때마다 로그에 내가 (만 배포시 등) 배포 나타납니다sinatra app을 heroku에 배포하는 중 오류가 발생했습니다. bundler : 명령을로드하지 못했습니다. rackup
2017-04-26T08:52:25.579045+00:00 app[web.1]: bundler: failed to load command: rackup (/app/vendor/bundle/ruby/2.3.0/bin/rackup)
2017-04-26T08:52:25.579176+00:00 app[web.1]: RuntimeError: missing run or map statement
2017-04-26T08:52:25.579178+00:00 app[web.1]: /app/vendor/bundle/ruby/2.3.0/gems/rack-1.6.5/lib/rack/builder.rb:146:in `to_app'
2017-04-26T08:52:25.579179+00:00 app[web.1]: /app/config.ru:5:in `<main>'
2017-04-26T08:52:25.579180+00:00 app[web.1]: /app/vendor/bundle/ruby/2.3.0/gems/rack-1.6.5/lib/rack/builder.rb:49:in `eval'
2017-04-26T08:52:25.579180+00:00 app[web.1]: /app/vendor/bundle/ruby/2.3.0/gems/rack-1.6.5/lib/rack/builder.rb:49:in `new_from_string'
2017-04-26T08:52:25.579181+00:00 app[web.1]: /app/vendor/bundle/ruby/2.3.0/gems/rack-1.6.5/lib/rack/builder.rb:40:in `parse_file'
2017-04-26T08:52:25.579182+00:00 app[web.1]: /app/vendor/bundle/ruby/2.3.0/gems/rack-1.6.5/lib/rack/server.rb:299:in `build_app_and_options_from_config'
2017-04-26T08:52:25.579183+00:00 app[web.1]: /app/vendor/bundle/ruby/2.3.0/gems/rack-1.6.5/lib/rack/server.rb:208:in `app'
2017-04-26T08:52:25.579184+00:00 app[web.1]: /app/vendor/bundle/ruby/2.3.0/gems/rack-1.6.5/lib/rack/server.rb:336:in `wrapped_app'
2017-04-26T08:52:25.579184+00:00 app[web.1]: /app/vendor/bundle/ruby/2.3.0/gems/rack-1.6.5/lib/rack/server.rb:272:in `start'
2017-04-26T08:52:25.579185+00:00 app[web.1]: /app/vendor/bundle/ruby/2.3.0/gems/rack-1.6.5/lib/rack/server.rb:147:in `start'
2017-04-26T08:52:25.579186+00:00 app[web.1]: /app/vendor/bundle/ruby/2.3.0/gems/rack-1.6.5/bin/rackup:4:in `<top (required)>'
2017-04-26T08:52:25.579187+00:00 app[web.1]: /app/vendor/bundle/ruby/2.3.0/bin/rackup:23:in `load'
2017-04-26T08:52:25.579215+00:00 app[web.1]: /app/vendor/bundle/ruby/2.3.0/bin/rackup:23:in `<top (required)>'
2017-04-26T08:52:25.724981+00:00 heroku[web.1]: Process exited with status 1
2017-04-26T08:52:26.928566+00:00 heroku[web.1]: Starting process with command `bundle exec rackup config.ru -p 56963`
2017-04-26T08:52:29.278571+00:00 app[web.1]: [2017-04-26 08:52:29] INFO WEBrick 1.3.1
2017-04-26T08:52:29.278590+00:00 app[web.1]: [2017-04-26 08:52:29] INFO ruby 2.3.1 (2016-04-26) [x86_64-linux]
2017-04-26T08:52:29.278909+00:00 app[web.1]: == Sinatra (v1.4.8) has taken the stage on 56963 for production with backup from WEBrick
2017-04-26T08:52:29.279274+00:00 app[web.1]: [2017-04-26 08:52:29] INFO WEBrick::HTTPServer#start: pid=4 port=56963
2017-04-26T08:52:29.825875+00:00 heroku[web.1]: State changed from starting to up
다른 게시물이 수 있음을 시사 config.ru
의 오류 때문일 수 있습니다. 광산은 단순히 포함
web: bundle exec rackup config.ru -p $PORT
heroku deploy log is here, 경우에 그것이 도움 :
는require './lib/app'
SinatraApp.run!
여기 내이 Procfile
입니다. 앞에서 말했듯이 앱이 정상적으로 작동하는 것으로 보입니다 (위의 스크립트가 성공적으로 끝났음을 알 수 있습니다). 그러나 모든 배포에서이 오류의 원인을 이해할 수 없습니다.
감사합니다.
를 배포 할 때 오류가 이전 실행중인 서버에서 제기되고있다 일어나고? traceback은 최소한 5 행을 가지고 있다고 제안한다 :'/app/config.ru:5:in', 그리고 당신이 포함하는 소스는 두 줄 밖에 없다. –
좋은 지적. 나는 이것도 알아 차렸다. 내 프로젝트에는 단 하나의'config.ru' 만 있습니다 (이중 체크). heroku가 일종의 기본 'config.ru'를 배포하고 있습니까? 나는 heroku 문서에서 이것에 대한 어떠한 증거도 찾을 수 없으며, 나의 dyno에 연결하고 파일을 검사 할 때, 그것은 변하지 않는다. –