RVM 是一個(gè)命令行工具,可以提供一個(gè)便捷的多版本 Ruby 環(huán)境的管理和切換。
https://rvm.io/
如果你打算學(xué)習(xí) Ruby / Rails, RVM 是必不可少的工具之一。
這里所有的命令都是再用戶權(quán)限下操作的,任何命令最好都不要用 sudo.
RVM 安裝
$ curl -L get.rvm.io | bash -s stable
$ source ~/.bashrc
$ source ~/.bash_profile
修改 RVM 的 Ruby 安裝源到國(guó)內(nèi)的 淘寶鏡像服務(wù)器,這樣能提高安裝速度
$ sed -i -e 's/ftp\.ruby-lang\.org\/pub\/ruby/ruby\.taobao\.org\/mirrors\/ruby/g' ~/.rvm/config/db
Ruby 的安裝與切換
列出已知的 Ruby 版本
安裝一個(gè) Ruby 版本
這里安裝了最新的 2.2.0, rvm list known 列表里面的都可以拿來(lái)安裝。
切換 Ruby 版本
如果想設(shè)置為默認(rèn)版本,這樣一來(lái)以后新打開的控制臺(tái)默認(rèn)的 Ruby 就是這個(gè)版本
查詢已經(jīng)安裝的ruby
卸載一個(gè)已安裝版本
gemset 的使用
RVM 不僅可以提供一個(gè)多 Ruby 版本共存的環(huán)境,還可以根據(jù)項(xiàng)目管理不同的 gemset.
gemset 可以理解為是一個(gè)獨(dú)立的虛擬 Gem 環(huán)境,每一個(gè) gemset 都是相互獨(dú)立的。
比如你有兩個(gè)項(xiàng)目,一個(gè)是 Rails 2.3 一個(gè)是 rails3. gemset 可以幫你便捷的建立兩套 Gem 開發(fā)環(huán)境,并且方便的切換。
gemset 是附加在 Ruby 語(yǔ)言版本下面的,例如你用了 1.9.2, 建立了一個(gè)叫 rails3 的 gemset,當(dāng)切換到 1.8.7 的時(shí)候,rails3 這個(gè) gemset 并不存在。
建立 gemset
rvm use 1.8.7
rvm gemset create rails23
然后可以設(shè)定已建立的 gemset 做為當(dāng)前環(huán)境
use 可以用來(lái)切換語(yǔ)言或者 gemset
前提是他們已經(jīng)被安裝(或者建立)。并可以在 list 命令中看到。
rvm use 1.8.7
rvm use 1.8.7@rails23
然后所有安裝的 Gem 都是安裝在這個(gè) gemset 之下。
列出當(dāng)前 Ruby 的 gemset
清空 gemset 中的 Gem
如果你想清空一個(gè) gemset 的所有 Gem, 想重新安裝所有 Gem,可以這樣
rvm gemset empty 1.8.7@rails23
刪除一個(gè) gemset
rvm gemset delete rails2-3
項(xiàng)目自動(dòng)加載 gemset
RVM 還可以自動(dòng)加載 gemset。
例如我們有一個(gè) Rails 3.1.3 項(xiàng)目,需要 1.9.3 版本 Ruby,整個(gè)流程可以這樣。
rvm install 1.9.3
rvm use 1.9.3
rvm gemset create rails313
rvm use 1.9.3@rails313
下面進(jìn)入到項(xiàng)目目錄,建立一個(gè) .rvmrc 文件。
在這個(gè)文件里可以很簡(jiǎn)單的加一個(gè)命令:
然后無(wú)論你當(dāng)前 Ruby 設(shè)置是什么,cd 到這個(gè)項(xiàng)目的時(shí)候,RVM 會(huì)幫你加載 Ruby 1.9.3 和 rails313 gemset.
使用 RVM 快速部署 Nginx + Passenger
首先安裝 Passenger
然后使用 passenger-install-nginx-module 來(lái)安裝 Nginx 和部署。
因?yàn)檫@一步需要 root 權(quán)限(因?yàn)橐幾g Nginx)可以用 rvmsudo 這個(gè)東西(這個(gè)東西真是個(gè)好東西)。
rvmsudo passenger-install-nginx-module
然后會(huì)讓你選擇是下載 Nginx 源碼自動(dòng)編譯安裝,還是自己選擇 Nginx 源碼位置。
選擇 Nginx 手動(dòng)安裝的可以添加別的編譯參數(shù),方便自定義編譯 Nginx。
然后一路下載安裝。默認(rèn)的安裝位置為 /opt/nginx.
然后看看 nginx.conf,都給你配置好了,只需要加上 root 位置(yourapp/public)就可以了。
當(dāng)我第一次安裝完成了,就驚呼,這也太爽了吧。
PS: RVM 是個(gè)好東西,做的很智能,(大部分)操作失敗后會(huì)告訴你原因,然后告訴你需要安裝哪些Lib等等,非常適合新手老手使用,簡(jiǎn)直是居家旅行必備良藥。
您可能感興趣的文章:- 學(xué)習(xí)Ruby你需要了解的相關(guān)知識(shí)(rvm, gem, bundle, rake, rails等)
- 教你如何在ubuntu15.04安裝 RVM
- RVM安裝和使用總結(jié)筆記
- 使用RVM實(shí)現(xiàn)控制切換Ruby/Rails版本