使用Capistrano从Windows到Linux将Rails应用程序部署到VPS

时间:2013-02-06 21:14:21

标签: ruby-on-rails gem capistrano bundler

我正在尝试将我的第一个rails应用程序部署到VPS。到目前为止,我已经使用ubuntu,postgresql,node,ruby等配置了它,并且运行cap deploy:setup命令没有错误。当我尝试运行cap deploy:cold时,我得到一个有趣的捆绑器错误,它说由于缺少gem而无法继续,即使它在gemfile中。我在Windows 7上进行开发,因此无法与独角兽捆绑并将此gem放入gem文件中的一个组中:

group :production do
    if RUBY_PLATFORM =~ /win32/
      gem "pg", :platform => [:mswin, :mingw]
    else
      gem "pg", :platform => :ruby
      gem 'unicorn'
    end
end

这是我在运行cap deploy:cold时得到的一些输出:

    ?[2;37mcommand finished in 200ms?[0m
 ** transaction: commit
  * ?[32m2013-02-06 21:11:42 executing `deploy:migrate'?[0m
  * ?[33mexecuting "cd /home/deployer/apps/blog/releases/20130206211131 && bundl
e exec rake RAILS_ENV=production  db:migrate"?[0m
    servers: ["176.58.109.176"]
    [176.58.109.176] executing command
 ** [out :: 176.58.109.176] rake aborted!
 ** [out :: 176.58.109.176] Please install the postgresql adapter: `gem install
activerecord-postgresql-adapter` (pg is not part of the bundle. Add it to Gemfil
e.)
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activerecord-3.2.11/lib/active_record/connection_adapters/postgresql_adapter.
rb:7:in `<top (required)>'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `require'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `block in requ
ire'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activesupport-3.2.11/lib/active_support/dependencies.rb:236:in `load_dependen
cy'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activesupport-3.2.11/lib/active_support/dependencies.rb:251:in `require'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection
_specification.rb:50:in `resolve_hash_connection'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection
_specification.rb:41:in `resolve_string_connection'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection
_specification.rb:25:in `spec'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activerecord-3.2.11/lib/active_record/connection_adapters/abstract/connection
_specification.rb:130:in `establish_connection'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activerecord-3.2.11/lib/active_record/railtie.rb:82:in `block (2 levels) in <
class:Railtie>'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activesupport-3.2.11/lib/active_support/lazy_load_hooks.rb:36:in `instance_ev
al'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activesupport-3.2.11/lib/active_support/lazy_load_hooks.rb:36:in `execute_hoo
k'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activesupport-3.2.11/lib/active_support/lazy_load_hooks.rb:43:in `block in ru
n_load_hooks'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activesupport-3.2.11/lib/active_support/lazy_load_hooks.rb:42:in `each'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activesupport-3.2.11/lib/active_support/lazy_load_hooks.rb:42:in `run_load_ho
oks'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activerecord-3.2.11/lib/active_record/base.rb:720:in `<top (required)>'
 ** [out :: 176.58.109.176] /home/deployer/apps/blog/shared/bundle/ruby/1.9.1/ge
ms/activerecord-3.2.11/lib/active_record/railties/databases.rake:25:in `block (2
 levels) in <top (required)>'
 ** [out :: 176.58.109.176] Tasks: TOP => db:migrate => db:load_config
 ** [out :: 176.58.109.176] (See full trace by running task with --trace)
    ?[2;37mcommand finished in 2926ms?[0m
failed: "sh -c 'cd /home/deployer/apps/blog/releases/20130206211131 && bundle ex
ec rake RAILS_ENV=production  db:migrate'" on 176.58.109.176

任何帮助都非常感激,经过坚实的努力,我已经准备好放弃了!非常感谢。

0 个答案:

没有答案