【问题标题】:ActiveRecord::ConnectionNotEstablished in AWS OpsWorksAWS OpsWorks 中的 ActiveRecord::ConnectionNotEstablished
【发布时间】:2014-03-16 12:29:59
【问题描述】:

我已经尝试了各种解决方案,包括下面的这个,但仍然遇到同样的错误。欣赏任何潜在客户。

Removing database.yml when using Mongoid in Rails 3.2

root@cumulonimbus:/srv/www/myapp/current/log# cat unicorn.stderr.log 
I, [2014-02-15T13:59:29.053668 #19768]  INFO -- : Refreshing Gem list
[deprecated] I18n.enforce_available_locales will default to true in the future. If you really want to skip validation of your locale you can set I18n.enforce_available_locales = false to avoid this message.
I, [2014-02-15T14:00:11.666899 #19768]  INFO -- : listening on addr=/srv/www/myapp/shared/sockets/unicorn.sock fd=14
E, [2014-02-15T14:00:11.667401 #19768] ERROR -- : ActiveRecord::ConnectionNotEstablished (ActiveRecord::ConnectionNotEstablished)
/home/deploy/.bundler/myapp/ruby/1.9.1/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_pool.rb:410:in `retrieve_connection'
/home/deploy/.bundler/myapp/ruby/1.9.1/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_specification.rb:171:in `retrieve_connection'
/home/deploy/.bundler/myapp/ruby/1.9.1/gems/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection_specification.rb:145:in `connection'
/srv/www/myapp/shared/config/unicorn.conf:31:in `block in reload'
/home/deploy/.bundler/myapp/ruby/1.9.1/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:515:in `call'
/home/deploy/.bundler/myapp/ruby/1.9.1/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:515:in `spawn_missing_workers'
/home/deploy/.bundler/myapp/ruby/1.9.1/gems/unicorn-4.8.2/lib/unicorn/http_server.rb:140:in `start'
/home/deploy/.bundler/myapp/ruby/1.9.1/gems/unicorn-4.8.2/bin/unicorn_rails:209:in `<top (required)>'
/home/deploy/.bundler/myapp/ruby/1.9.1/bin/unicorn_rails:23:in `load'
/home/deploy/.bundler/myapp/ruby/1.9.1/bin/unicorn_rails:23:in `<main>'

root@cumulonimbus:/srv/www/myapp/current# grep -r active_record config/
config/environments/test.rb:  # config.active_record.schema_format = :sql
config/initializers/session_store.rb:# MyApp::Application.config.session_store :active_record_store
config/initializers/devise.rb:  # Load and configure the ORM. Supports :active_record (default) and
config/application.rb:# require "active_record/railtie"
config/application.rb:    # config.active_record.observers = :cacher, :garbage_collector, :forum_observer

root@cumulonimbus:/srv/www/myapp/current# bundle show|grep -E 'unicorn|rails'

• 导轨 (3.2.11)

• 独角兽 (4.8.2)

root@cumulonimbus:/srv/www/myapp/current# gem -v

2.1.11

root@cumulonimbus:/srv/www/myapp/current# ruby -v

ruby 1.9.3p484 (2013-11-22 revision 43786) [x86_64-linux]

【问题讨论】:

    标签: ruby-on-rails ruby activerecord devise aws-opsworks


    【解决方案1】:

    问题已排序。 显然,股票 OpsWorks 独角兽食谱引用了 ActiveRecord。 因此,通过注释/删除 before_fork..end 和 after_fork..end 的整个块帮助我们部署了使用 mongoid 的应用程序。

    https://github.com/aws/opsworks-cookbooks/blob/master-chef-11.4/unicorn/templates/default/unicorn.conf.erb

    我们需要利用 sock 文件而不是 NginX 中的端口方法,这对我们的应用非常有益。

    另外两个任务是覆盖来自 stock unicorn 的默认键值,并使用 shared/script/unicorn 脚本作为部署用户自动启动。

    【讨论】:

      猜你喜欢
      • 2012-04-05
      • 1970-01-01
      • 1970-01-01
      • 2013-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-19
      相关资源
      最近更新 更多