安装rvm命令行工具

rvm是一个命令行工具,能够提供一个便捷的多版本ruby环境的管理和切换。nginx

https://rvm.io/ruby

若是你打算学习ruby/rails, rvm是必不可少的工具之一。bash

这里全部的命令都是再用户权限下操做的,任何命令最好都不要用sudo.服务器

rvm安装

$ curl -L get.rvm.io | bash -s stable
$ source ~/.bashrc
$ source ~/.bash_profile

修改 RVM 的 Ruby 安装源到国内的 淘宝镜像服务器,这样能提升安装速度

$ sed -i -e 's/ftp\.ruby-lang\.org\/pub\/ruby/ruby\.taobao\.org\/mirrors\/ruby/g' ~/.rvm/config/db

ruby的安装与切换

  • 列出已知的ruby版本
rvm list known
  • 安装一个ruby版本
rvm install 1.9.3

这里安装了最新的1.9.3, rvm list known列表里面的均可以拿来安装。app

  • 使用一个ruby版本
rvm use 1.9.3

若是想设置为默认版本,能够这样curl

rvm use 1.9.3 --default 
  • 查询已经安装的ruby
rvm list
  • 卸载一个已安装版本
rvm remove 1.9.2

gemset的使用

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并不存在。命令行

  • 创建gemset
rvm use 1.8.7
rvm gemset create rails23
  • 而后能够设定已创建的gemset作为当前环境

use 能够用来切换语言,或者gemset,前提是他们已经被安装(或者创建)。并能够在list命令中看到。

rvm use 1.8.7
rvm use 1.8.7@rails23

而后全部安装的gem都是安装在这个gemset之下。

  • 列出当前ruby的gemset
rvm gemset list
  • 清空gemset中的gem

若是你想清空一个gemset的全部gem,想从新安装全部gem,能够这样

rvm gemset empty 1.8.7@rails23
  • 删除一个gemset
rvm gemset delete rails2-3

项目自动加载gemset

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.

使用rvm来快速部署nginx+passenger

*首先安装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等等,很是适合新手老手使用,简直是居家旅行必备良药。

相关文章
相关标签/搜索