我正在尝试使用 capistrano gem 在 VPS 上部署 Rails 应用程序。我想将它从我的本地机器部署到 VPS。我没有使用 Github 或 SVN 之类的任何存储库。
所以,我已经安装了 capistrano gem 并运行了“bundle”。并添加了以下几行:
头文件
$:.unshift(File.expand_path('./lib', ENV['rvm_path']))
require "rvm/capistrano"
set :rvm_ruby_string, 'ruby-1.9.3-p194@gemset'
部署.rb
set :user, 'deploy'
set :application, "my_app"
set :scm, :none
set :deploy_via, :copy
set :deploy_to, "/home/#{user}/#{application}"
set :use_sudo, false
default_run_options[:pty] = true
ssh_options[:forward_agent] = true
role :web, '1.2.3.4'
role :app, '1.2.3.4'
role :db, '1.2.3.4', :primary => true
namespace :deploy do
task :start do ; end
task :stop do ; end
task :restart, :roles => :app, :except => { :no_release => true } do
run "#{try_sudo} touch #{File.join(current_path,'tmp','restart.txt')}"
end
end
但是,在本地运行 'cap deploy:setup' 后,出现以下错误:
RVM - Capistrano integration was extracted to a separate gem, install: `gem install rvm-capistrano` and remove the `$LOAD_PATH.unshift` line, note also the 'set :rvm_type, :user' is now the default (instead of :system). (RuntimeError)
我不确定是否应该使用 rvm-capistrano gem。我是部署方面的新手,详细或分步说明真的很有帮助。谢谢。