【问题标题】:unicorn fails when started by capistrano独角兽在由 capistrano 启动时失败
【发布时间】:2012-08-11 01:59:57
【问题描述】:

当我通过 capistrano 任务启动 unicorn 并尝试访问我的应用时,我得到了这个

tarted GET "/" for xx.xxx.xxx at 2012-08-11 01:38:31 +0000
Processing by HomeController#index as HTML
  Rendered home/index.html.erb within layouts/application (0.1ms)
Completed 500 Internal Server Error in 87ms
** [Bugsnag] No API key configured, couldn't notify

ActionView::Template::Error (undefined method `split' for nil:NilClass):
    32:               </form>
    33:             </ul>
    34:           <ul class="nav pull-right">
    35:             <% if user_signed_in? %>
    36:               <li class="dropdown">
    37:                 <a href="#" class="dropdown-toggle" data-toggle="dropdown">
    38:                   <%= current_user.name %>
  app/controllers/application_controller.rb:5:in `current_user'
  app/controllers/application_controller.rb:9:in `user_signed_in?'
  app/views/layouts/application.html.erb:35:in `_app_views_layouts_application_html_erb__3931886679734892787_26070680'

除了ActionView::Template::Error,独角兽说没有配置busgnag API密钥,但我已经在我的root的.bashrc和deploy的.bashrc上设置了密钥(deploy也是一个用户)
但是当我通过像ssh root@server 这样的ssh 访问服务器并尝试使用capistrano 的任务发出的相同命令启动独角兽时,一切正常......
我尝试在 capistrano 上设置 root 用户并部署用户,两者都使用 use_sudo true 和 false...
我在这里错过了什么?
谢谢

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 capistrano


    【解决方案1】:

    您确定手动运行它时您是在生产模式下运行吗? undefined methodxxxx' for nil:NilClass` 当你有一个 nil 变量时发生。很多时候代码就像...

    Articles.each do |article|
      article.title
    end
    

    将失败并出现相同的错误,因为在每个环境中填充的数据库不同。我建议查看第 5 行 application_controller.rb 并查看该变量是否存在于生产和开发中。

    另外,请确保您的 bugsnap api 密钥在您的 production.rb 文件中可用。

    【讨论】:

    • 我从工头开始,像这样:web: bundle exec unicorn_rails -c config/unicorn/production.rb -E production。我没有将 bugsnag api 密钥放在生产环境中,我使用的是环境变量。我已将这些变量添加到 .bashrc 文件
    • 必须将我的 ENV 放在 environment.rb 文件上 :)
    猜你喜欢
    • 1970-01-01
    • 2016-08-01
    • 1970-01-01
    • 2012-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多