【问题标题】:Rails EC2 Deployment - no such file to loadRails EC2 部署 - 没有要加载的文件
【发布时间】:2014-04-27 11:34:17
【问题描述】:

我正在解决困扰 EC2 Rails 部署的各种限制条件。我不允许使用 Capistrano,因为我无法将此应用程序保存到任何公共 git 存储库(如 GitHub),而且我还需要完全控制 Rails 应用程序安装到 EC2 上的哪个实例,并且能够轻松地修改它(从 AWS 控制台即时添加负载均衡器、自动缩放器等),所以我也不能使用 Rubber。

我最后只是简单地将我的 Rails 应用程序目录通过 ssh 连接到 EC2 实例,但是在运行 bundle install 时遇到了“没有要加载的文件”错误,特别是 时间宝石。因为这是一个“集成”的宝石,我想我可能只是忽略了一些简单的东西。以下是我尝试过的事情:

  • 我使用 RVM 来管理我的 ruby​​、rails、rubygems 等版本。
  • 删除我的 Gemfile.lock 文件并重新运行 bundle-install
  • 在我的 GemFile 中包含“时间”并重新运行 bundle-install

此应用程序在我的本地开发环境中运行没有问题,那么我忽略了什么?

注意:我需要托管在单个 EC2 实例上。否则,我会简单地部署到 EBS、Heroku 等。

【问题讨论】:

  • 你能把确切的错误信息放在no such file to load吗?
  • 这是一个愚蠢的错误。我写了要求“时间”而不是要求“时间”。这在我的本地实例上运行良好,但由于某种原因在 EC2 ubuntu 实例上运行良好。
  • 你能发布一个完整的答案吗?
  • 就这样,Rico - 感谢您的提醒。

标签: ruby-on-rails ruby amazon-web-services amazon-ec2


【解决方案1】:

这是一个愚蠢的错误,在这个问题中也有详细说明:heroku - cant run rake db:migrate - no such file --Time

我在控制器中错误地使用了“时间”而不是“时间”的 require 语句。这在本地是允许的,但我的 ubuntu 服务器 ruby​​ 环境没有那么宽容。在我的控制器中将“T”更改为“t”并运行“捆绑安装”完全解决了这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-03-11
    • 1970-01-01
    • 1970-01-01
    • 2011-05-02
    • 2011-03-28
    • 2013-01-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多