1

首先让我说这是我第一次部署 Rails 应用程序,所以我对此很陌生。我的生产环境现在成功运行并使用 Capistrano 进行了部署,但由于缺少 gem,部署第一次失败。为了解决这个问题,我基本上在服务器上克隆了我的 repo,运行

bundle install

这成功安装了 gems,并且 Capistrano 下一次成功部署。

因此,考虑到这一点,是否有一种正确的方法可以在每次部署时安装新的 gem?

我的环境是 Ubuntu Server、Apache2、Passenger、Rails。

谢谢!

4

2 回答 2

0

将此添加到 config/deploy.rb 文件的顶部将使 Capistrano 执行捆绑安装。

需要“捆绑器/capistrano”

于 2012-09-11T15:19:33.420 回答
0

我们的 deploy.rb 中有以下内容

require 'bundler/capistrano'
load 'deploy/assets'
before 'deploy', 'rvm:install_rvm'

ssh_options[:forward_agent] = true
set :rvm_ruby_string, ENV['GEM_HOME'].gsub(/.*\//,"") # Read from local system
require 'rvm/capistrano'
set :rvm_ruby_string, '1.9.3-p194'

...

对我们来说就像是一种享受,尽管通常在新版本上我们必须直接在服务器上安装一些 gem。

于 2012-09-11T15:26:28.283 回答