【发布时间】:2016-05-14 04:40:55
【问题描述】:
如何在 ELB 上设置和更新 ruby 版本?
我已经在我们的 qa 和 staging env 中使用 ruby 2.2.2 大约 8 个月了。我周一刚刚设置了我们的生产环境,它不会部署,因为它说 ruby 设置为 2.2.3,我的 gemfile 说 2.2.2。我更新并重新部署,一切似乎都很好。
我回到了 qa/staging 环境,无法让它更新到 ruby 2.2.3。一直说 ruby 版本是 2.2.2 而 Gemfile 是 2.2.3
我升级了(通过 elb ui):
64bit Amazon Linux 2015.03 v1.3.1 running Ruby 2.2 (Passenger Standalone)到
64bit Amazon Linux 2015.09 v2.0.6 running Ruby 2.2 (Passenger Standalone)
现在显示Your Ruby version is 2.2.3, but your Gemfile specified 2.2.2。必须有一种更简单的方法来做到这一点。
【问题讨论】:
-
澄清一下,您想在所有环境中使用 Ruby 2.2.3,对吗?您是否在 gem 文件中指定了 ruby 2.2.3?见bundler.io/v1.3/gemfile_ruby.html
-
将您的 Gemfile 上的 ruby 版本设置为 2.2.3 并删除您的 Gemfile.lock 文件。在本地运行 bundle install ,提交代码并部署。
-
正确,我们在 qa 和 stag 上使用 2.2.2,当我设置新的 prod 环境时,elb 想要使用 2.2.3,所以我在 Gemfile 中设置并部署它并在 prod 上运行。但是在将其合并到 qa 分支后,它不会部署。我会尝试破解 .lock 文件并重新部署。
标签: ruby-on-rails ruby amazon-elastic-beanstalk