如何在capistrano部署中管理捆绑的gem?

Ste*_*ven 4 capistrano ruby-on-rails

目前,我刚刚运行以下内容:

在'deploy:update_code'之后,'deploy:bundle'

namespace :deploy do
  task :bundle do
    run "cd #{release_path} && bundle install --deployment --without development test staging"
  end
end
Run Code Online (Sandbox Code Playgroud)

现在这个工作正常,但捆绑包最终会安装所有的宝石vendor/gems.虽然我理解将gems隔离到每个版本的优点(与使用共享文件夹相反,哪些(?)可能导致回滚时出现错误等),当然有一种更好的方法可以做到这一点,而不是部署和节省磁盘空间的时间很长.

Ris*_*ogi 9

捆绑1.0发布后情况发生了变化

您无需从部署创建自定义任务.

只是用 require 'bundler/capistrano'

看看这个http://blog.josephholsten.com/2010/09/deploying-with-bundler-and-capistrano/了解更多详情