【问题标题】:Heroku app crash : heroku[router]: at=error code=H10Heroku 应用程序崩溃:heroku[router]: at=error code=H10
【发布时间】:2014-03-30 05:14:19
【问题描述】:

我刚刚在 heroku 上启动了一个新应用程序,我在一个正在运行的应用程序中使用了 git clone。我把所有东西都推了上来,迁移了数据库,然后重新启动了 heroku。该应用程序仍然崩溃。 heroku logs 给我:

2014-02-27T01:18:25.726069+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=********.herokuapp.com request_id=1ded5a34-7d01-440b-9fb4-0041fdc64715 fwd="75.149.130.1" dyno= connect= service= status=503 bytes=

code=H10 是“应用程序或测功机崩溃”。如果有帮助,该应用程序正在 Thin 上运行。

如何重新启动 dynos?我该怎么做才能获得更多关于此的诊断信息?

编辑:(更多信息)

我运行 heroku restart thin 并立即运行 heroku logs 发现了这一点: ruby: symbol lookup error: /app/vendor/bundle/ruby/2.0.0/gems/eventmachine-1.0.0/lib/rubyeventmachine.so: undefined symbol: rb_enable_interrupt

该应用程序是基于 ruby​​ 1.9.2 和 rails 3.0.10 构建的,所以我认为这里发生了某种版本问题,但我不明白。 This article 提到 Thin 存在同样的问题,建议不要使用它。但是我有与另一个 Heroku 应用程序完全相同的应用程序运行良好,而且我曾经使用过的所有应用程序都很薄,我真的不知道为什么这不起作用。

编辑 2:

看起来虽然我的应用程序是使用 ruby​​ 1.9.2 构建的,但 heroku 正在尝试使用 ruby​​ 2.0.0 部署它。我如何告诉它使用 1.9.2?设置或我的 gem/config 文件中有什么东西?

编辑3:(我想我正在做某事)

运行 ruby -v 产生 1.9.2

运行 `heroku run "ruby -v" 产生 2.0.0

This article 表示可以在 gemfile 中声明。我觉得这会解决我的问题。

【问题讨论】:

    标签: heroku


    【解决方案1】:

    Heroku ruby​​ buildpack 将安装 Gemfile 中指定的 ruby​​ 版本。 Ruby 2.0.0 是当前默认的 ruby​​。

    要将 Ruby 1.9.2 配置为您的应用所需的版本,请将以下内容添加到 Gemfile 的顶部:

    ruby '1.9.2'
    

    【讨论】:

      猜你喜欢
      • 2020-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-16
      相关资源
      最近更新 更多