- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在 Elastic Beanstalk 上运行标准 Rails 4.2.0 应用程序。该容器是运行 Ruby 2.1.4、Puma 2.9.1 和 Nginx 1.6.2 的 64 位 Amazon Linux 2014.09 v1.0.9 盒子。
当我将代码推送到此环境时,我在 puma.log 中收到以下错误:“您已经激活了rack 1.5.2,但您的 Gemfile 需要rack 1.6.0。Prepending bundle exec
按照你的命令可能会解决这个问题。”
我不记得几个月前测试时看到过这些错误,而且它似乎是间歇性的。有时我插入一切正常,有时我插入却失败。
https://forums.aws.amazon.com/thread.jspa?messageID=599675表明 /opt/elasticbeanstalk/support/conf/puma.conf
中可能存在错误,但我已经修补了该文件,但错误仍然发生。我还确保我的 Gemfile 中必须有 puma 和rack。
让我的 EC2 实例加载正确版本的机架的最适合生产且可持续的方式是什么?
最佳答案
经过多次尝试和错误,这对我有用。
从Gemfile
中删除puma和rack。运行捆绑安装
。这是我的 Gemfile
的样子。
# Gemfile
source 'https://rubygems.org'
gem 'ahoy_matey'
gem 'aws-sdk'
gem 'bcrypt'
gem 'cancancan'
gem 'coffee-rails'
gem 'font-awesome-rails'
gem 'foundation-rails'
gem 'gibbon'
gem 'jbuilder'
gem 'jquery-infinite-pages'
gem 'jquery-rails'
gem 'kaminari'
gem 'mandrill_mailer'
gem 'modernizr-rails'
gem 'nokogiri'
gem 'omniauth-facebook'
gem 'omniauth-twitter'
gem 'owlcarousel-rails'
gem 'paper_trail'
gem 'pg'
gem 'rails'
gem 'rails_admin'
gem 'sanitize'
gem 'sass-rails'
gem 'sentry-raven'
gem 'stripe'
gem 'twitter-typeahead-rails'
gem 'uglifier'
gem 'whenever'
group :test, :development do
gem 'dotenv-rails'
end
group :development do
gem 'spring'
end
group :doc do
gem 'sdoc'
end
在存储库中的 .ebextensions/
文件夹中,创建一个脚本以将rack 1.6.0 安装为本地 gem。
# .ebextensions/00-install-local-gems.config:
commands:
# add rack 1.6.0 to $GEM_ROOT so puma can activate it instead of rack 1.5.2
# use actual path not $GEM_ROOT because env vars are not available here
# make sure puma and rack are not in app's Gemfile or there will be blood
00_install_rack_160:
command: gem install -i /opt/rubies/ruby-2.1.4/lib/ruby/gems/2.1.0 rack -v 1.6.0
将 Gemfile
、Gemfile.lock
和 .ebextensions/00-install-local-gems.config
提交到您的存储库中。将代码推送到 Elastic Beanstalk。
您现在应该终止所有现有实例。 Elastic Beanstalk 将使用此更新的配置重新创建它们。
我可以确认上述内容适用于 64 位 Amazon Linux 2014.09 v1.2.0 和 v1.0.9,两者都运行 Ruby 2.1 (Puma)。
关于ruby-on-rails - Elastic Beanstalk 间歇性激活机架 1.5.2,但我的 Gemfile 需要机架 1.6.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29334394/
Kafka引入了rack-id,以便在整个机架发生故障时提供冗余功能。有一个最小同步副本设置,用于指定生产者收到确认之前需要同步的最小副本数量(-1/所有配置)。有一个不干净的领导者选举设置,用于指定
Kafka引入了rack-id,以便在整个机架发生故障时提供冗余功能。有一个最小同步副本设置,用于指定生产者收到确认之前需要同步的最小副本数量(-1/所有配置)。有一个不干净的领导者选举设置,用于指定
我正在尝试使用 Sinatra、Ruby、rack、haml、pony 和 SendGrid 构建一个应用程序,并使用 git 和 RVM 部署在 Heroku 上。该应用程序是一个博客变体,应该发送
我正在尝试将 Rack OAuth-2 server 集成到我的 sinatra 应用程序中,以便在 web-server flow implementation 中使用它,但我无法使其工作:(。我在
我按照这些说明为 Rails 3.07 安装了 rack ssl:http://www.simonecarletti.com/blog/2011/05/configuring-rails-3-http
我在我的 Rails 3.1 应用程序中使用 Rack::SSL 来启用 SSL 连接。 我已将 gem 'rack-ssl' 添加到我的 Gemfile 和 require 'rack/ssl' c
当我尝试将未分配的辅助分片分配给节点时出现错误。 { "error": { "root_cause": [ { "type": "remote_transpor
我是一名优秀的程序员,十分优秀!