rvm是一个命令行工具,能够提供一个便捷的多版本ruby环境的管理和切换。nginx
https://rvm.io/ruby
若是你打算学习ruby/rails, rvm是必不可少的工具之一。bash
这里全部的命令都是再用户权限下操做的,任何命令最好都不要用sudo.服务器
$ curl -L get.rvm.io | bash -s stable
$ source ~/.bashrc
$ source ~/.bash_profile
$ sed -i -e 's/ftp\.ruby-lang\.org\/pub\/ruby/ruby\.taobao\.org\/mirrors\/ruby/g' ~/.rvm/config/db
rvm list known
rvm install 1.9.3
这里安装了最新的1.9.3, rvm list known
列表里面的均可以拿来安装。app
rvm use 1.9.3
若是想设置为默认版本,能够这样curl
rvm use 1.9.3 --default
rvm list
rvm remove 1.9.2
rvm不只能够提供一个多ruby版本共存的环境,还能够根据项目管理不一样的gemset.工具
gemset能够理解为是一个独立的虚拟gem环境,每个gemset都是相互独立的。学习
好比你有两个项目,一个是rails 2.3 一个是 rails 3. gemset能够帮你便捷的创建两套gem开发环境,而且方便的切换。url
gemset是附加在ruby语言版本下面的,例如你用了1.9.2, 创建了一个叫rails3的gemset,当切换到1.8.7的时候,rails3这个gemset并不存在。命令行
rvm use 1.8.7
rvm gemset create rails23
use 能够用来切换语言,或者gemset,前提是他们已经被安装(或者创建)。并能够在list命令中看到。
rvm use 1.8.7
rvm use 1.8.7@rails23
而后全部安装的gem都是安装在这个gemset之下。
rvm gemset list
若是你想清空一个gemset的全部gem,想从新安装全部gem,能够这样
rvm gemset empty 1.8.7@rails23
rvm gemset delete rails2-3
rvm还能够自动加载gemset.
例如咱们有一个rails3.1.3项目,须要1.9.3版本ruby.整个流程能够这样。
rvm install 1.9.3
rvm use 1.9.3
rvm gemset create rails313
rvm use 1.9.3@rails313
下面进入到项目目录,创建一个.rvmrc文件。
在这个文件里能够很简单的加一个命令:
rvm use 1.9.3@rails313
而后不管你当前ruby设置是什么,cd到这个项目的时候,rvm会帮你加载 ruby 1.9.3和rails313 gemset.
*首先安装passenger
gem install passenger
而后使用passenger-install-nginx-module 来安装nginx和部署。
由于这一步须要root权限(由于要编译nginx)能够用rvmsudo这个东西。(这个东西真是个好东西)
rvmsudo passenger-install-nginx-module
而后会让你选择是下载nginx源码自动编译安装,仍是本身选择nginx源码位置。
选择nginx手动安装的能够添加别的编译参数,方便自定义编译nginx。
而后一路下载安装。默认的安装位置为/opt/nginx.
而后看看nginx.conf,都给你配置好了,只须要加上root位置(yourapp/public)就能够了。
当我第一次安装完成了,就惊呼,这也太爽了吧。
ps:rvm是个好东西,作的很智能,(大部分)操做失败后会告诉你缘由,而后告诉你须要安装哪些Lib等等,很是适合新手老手使用,简直是居家旅行必备良药。