Ruby on rails 如何为Sinatra项目在capistrano设置rvm
我需要在capistrano中指定rvm,以便将Sinatra项目部署到远程服务器Ruby on rails 如何为Sinatra项目在capistrano设置rvm,ruby-on-rails,ruby,sinatra,rvm,capistrano,Ruby On Rails,Ruby,Sinatra,Rvm,Capistrano,我需要在capistrano中指定rvm,以便将Sinatra项目部署到远程服务器 deploy@ubuntu-512mb-fra1-01:~$ rvm info ruby-2.3.1: homes: gem: "/home/deploy/.rvm/gems/ruby-2.3.1" ruby: "/home/deploy/.rvm/rubies/ruby-2.3.1" environment: PATH:
deploy@ubuntu-512mb-fra1-01:~$ rvm info
ruby-2.3.1:
homes:
gem: "/home/deploy/.rvm/gems/ruby-2.3.1"
ruby: "/home/deploy/.rvm/rubies/ruby-2.3.1"
environment:
PATH: "/home/deploy/.rvm/gems/ruby-2.3.1/bin:/home/deploy/.rvm/gems/ruby-2.3.1@global/bin:/home/deploy/.rvm/rubies/ruby-2.3.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/deploy/.rvm/bin:/home/deploy/.rvm/bin"
GEM_HOME: "/home/deploy/.rvm/gems/ruby-2.3.1"
GEM_PATH: "/home/deploy/.rvm/gems/ruby-2.3.1:/home/deploy/.rvm/gems/ruby-2.3.1@global"
MY_RUBY_HOME: "/home/deploy/.rvm/rubies/ruby-2.3.1"
IRBRC: "/home/deploy/.rvm/rubies/ruby-2.3.1/.irbrc"
RUBYOPT: ""
gemset: ""
我有以下deploy.rb
lock '3.4.0'
set :application, 'sudoku'
set :repo_url, 'git@github.com:user/name-project.git'
set :deploy_to, '/home/deploy/name-project'
set :linked_dirs, %w{ log }
namespace :deploy do
desc 'Restart application'
task :restart do
on roles(:app), in: :sequence, wait: 5 do
execute :touch, release_path.join('tmp/restart.txt')
end
end
after :publishing, 'deploy:restart'
after :finishing, 'deploy:cleanup'
end
这是有关远程服务器上rvm的信息
deploy@ubuntu-512mb-fra1-01:~$ rvm info
ruby-2.3.1:
homes:
gem: "/home/deploy/.rvm/gems/ruby-2.3.1"
ruby: "/home/deploy/.rvm/rubies/ruby-2.3.1"
environment:
PATH: "/home/deploy/.rvm/gems/ruby-2.3.1/bin:/home/deploy/.rvm/gems/ruby-2.3.1@global/bin:/home/deploy/.rvm/rubies/ruby-2.3.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/deploy/.rvm/bin:/home/deploy/.rvm/bin"
GEM_HOME: "/home/deploy/.rvm/gems/ruby-2.3.1"
GEM_PATH: "/home/deploy/.rvm/gems/ruby-2.3.1:/home/deploy/.rvm/gems/ruby-2.3.1@global"
MY_RUBY_HOME: "/home/deploy/.rvm/rubies/ruby-2.3.1"
IRBRC: "/home/deploy/.rvm/rubies/ruby-2.3.1/.irbrc"
RUBYOPT: ""
gemset: ""
在deploy.rb中为设置RVM添加了什么?谢谢你他们在这方面很有天赋: 按照安装说明进行操作,然后相应地配置capistrano:
# deploy.rb or stage file (staging.rb, production.rb or else)
set :rvm_type, :user # Defaults to: :auto
set :rvm_ruby_version, '2.0.0-p247' # Defaults to: 'default'
set :rvm_custom_path, '~/.myveryownrvm' # only needed if not detected
非常感谢。我需要粘贴哪个正确的路径来设置:rvm_custom_path,“~/.myveryownrvm”?如前所述,只有在更改了默认的rvm路径时才需要它。正如这里所指出的:。阅读gem的github页面上的文档。我学习了100次文档。我用这个宝石。但在远程服务器上显示错误
无法执行/home/deploy/.rvm/wrappers/ruby-2.3.1-p112/ruby:没有这样的文件或目录(2)
在capfile中我添加了set:rvm\u类型,:user set:rvm\u ruby\u版本,'2.3.1-p112'
并且您在远程服务器ruby-vruby 2.3.1p112(2016-04-26修订版54768)上的configs?中安装了这个非常相同的版本[x86_64-linux]