码迷,mamicode.com
首页 > 其他好文 > 详细

Centos系统搭建ror平台搭建

时间:2014-11-19 02:06:59      阅读:224      评论:0      收藏:0      [点我收藏+]

标签:rails   gem   rvm   gemset   

本文系统Centos6.5 x64


Ruby On Rails是一个用Ruby语言写的开源Web框架,和J2EE,PHP等类似。Ruby On Rails是一个非常优美的Web开发框架,并且融入了敏捷开发的精髓:约定大于配置。你会发现,它真的是一个非常优美的框架!今天我们介绍如何在Centos下搭建Ruby On Rails开发环境。


Tips:

Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)。目前支持Ruby的大多数版本,有 1.8.7,1.9.1,1.9.2和Ruby Enterprise Editon,通过RVM可以很方便的在多个Ruby版本中快速切换。RVM同时 也支持JRuby。


设 想当前工作在Ruby 1.9.2 + Rails 3.0下,想体验最新的Rails 开发版,怎么办?Gemset就是为解决这个问题而设计的,它可 以为每个Ruby版本生成多个gemsets,各个gemset相互独立,这意味着你可以很方便的切换到某个gemset下去体验一个未正式发布的gem 版本,而不会破坏当前的工作环境,完毕后,再切回到工作的gemset下即可。


大多的IDE也都很好的支持了RVM方面,可以自动识别RVM管理的Ruby版本和GemSet,方便你切换Ruby的解析环境。


1、创建普通帐号、查看当前环境环境文件;

[root@master ~]# useradd -d /opt/Truby Truby
[root@master ~]# echo "Truby" |passwd --stdin Truby

bubuko.com,布布扣

2、安装rvm源:

[Truby@master ~]$ curl -L get.rvm.io | bash -s stable
[Truby@master ~]$ source ~/.profile
[Truby@master ~]$ source ~/.bash_profile

安装rvm后查看本地当前变化:

[Truby@master ~]$ ls -a
.  ..  .bash_history  .bash_logout  .bash_profile  .bashrc  .emacs  .gnome2  .gnupg  .mozilla  .pki  .profile  .rvm  .zlogin  .zshrc
[Truby@master ~]$ cd .rvm/
l[Truby@master .rvm]$ ls
archives  config   docs          examples   gems     help   installed.at  LICENSE  man      patchsets  RELEASE  scripts  tmp   VERSION
bin       contrib  environments  gem-cache  gemsets  hooks  lib           log      patches  README     rubies   src      user  wrappers

使用下面命令对RVM自己进行升级
$ rvm update

 

rvm 相关命令:

$ rvm info  
$ rvm info 1.9.2  

$ rvm list known  
$ rvm install 1.9.2        # 安装 ruby-1.9.2  
$ rvm install ree          # install Ruby Enterprise Edition (REE)  

$ rvm  ruby-1.8.7-p160     #切换1.8.7-p160为当前使用版本  
$ rvm 1.8.7-p160           #同上面命令一样rvm ruby-1.8.7-p160  
$ ruby -v                  #查看当前Ruby版本  

$ which ruby

$ rvm --default use 1.9.2  #设置1.9.2为默认版本  
  
$ rvm default              #通过default可以快速回到默认版本  
$ rvm list default         #查看当前版本设置信息  
$ rvm reset                #恢复系统默认设置    

$ rvm list                 #列出已安装的Ruby版本  
  
$ rvm list rubies          #同上  
$ rvm list default         #显示默认Ruby版本信息  
$ rvm list known           #列出RVM所支持的所有Ruby版本的信息  


#为ree-187的Ruby版本创建一个别名叫:reed
$ rvm alias create reed ree-1.8.7-p2010.01    
  

$ rvm use reed             #通过别名迅速切换  
$ rvm alias delete reed    #删除别名  
$ rvm alias list           #查看所有的别名  


$ rvm remove ruby-1.9.2-p0  
  
$ rvm uninstall ruby-1.9.2-p0  

$ rvm gemset create rails3 #创建一个名为rails3的gemset  
 
$ rvm gemset use rails3    #在当前Ruby下使用rails3这个gemset  


#或者直接使用这种命名,直接指定ruby和gemset的信息。    
$ rvm use ruby-1.9.2-p0@rails3 


#设置默认  
$ rvm use ruby-1.9.2-p0@rails3 --default   

#选择使用ruby版本  
$ rvm default              
  

#列出当前Ruby版本下所有gemsets的信息 
$ rvm gemset list  

  
#列出所有Ruby版本下所有gemsets的信息    
$ rvm gemset list_all  

#显示当前所使用的gemset信息  
$ rvm gemset name
  

$ rvm gemdir                       #所在位置  
~/.rvm/gems/ruby-1.9.2-p0@rails3


$ rvm gemset delete rails3         #会让确认一次  
  
$ rvm --force gemset delete rails3 #直接删除,没有确定步骤  

$ rvm gemset empty rails3  
$ rvm --force gemset empty rails3  #直接删除,没有确定步骤  

$ rvm gemset export rails3.gems  

$ rvm gemset rails 3  
$ rvm gemset import rails3   

$ rvm gemset copy 1.8.7@rails3 1.9.2-head@rails3

3、安装ruby

3.1、列出已知的ruby版本

[Truby@master ~]$ rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p598]
[ruby-]2.1.4
[ruby-]2.1[.5]
[ruby-]2.1-head
ruby-head
。。。。。。

3.2、安装ruby (在安装过程中可能会提示安装其他依赖包,使用root安装其依赖的包此略;)

[Truby@master ~]$ rvm install 1.9.3
Searching for binary rubies, this might take some time.
Found remote file https://rvm_io.global.ssl.fastly.net/binaries/centos/6/x86_64/ruby-1.9.3-p551.tar.bz2
Checking requirements for centos.
Requirements installation successful.
ruby-1.9.3-p551 - #configure
ruby-1.9.3-p551 - #download
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 10.2M  100 10.2M    0     0  34767      0  0:05:09  0:05:09 --:--:-- 31365
No checksum for downloaded archive, recording checksum in user configuration.
ruby-1.9.3-p551 - #validate archive
ruby-1.9.3-p551 - #extract
ruby-1.9.3-p551 - #validate binary
ruby-1.9.3-p551 - #setup
ruby-1.9.3-p551 - #gemset created /opt/Truby/.rvm/gems/ruby-1.9.3-p551@global
ruby-1.9.3-p551 - #importing gemset /opt/Truby/.rvm/gemsets/global.gems....................................
ruby-1.9.3-p551 - #generating global wrappers........
ruby-1.9.3-p551 - #gemset created /opt/Truby/.rvm/gems/ruby-1.9.3-p551
ruby-1.9.3-p551 - #importing gemsetfile /opt/Truby/.rvm/gemsets/default.gems evaluated to empty gem list
ruby-1.9.3-p551 - #generating default wrappers........

 A、查询已经安装的ruby

[Truby@master ~]$ rvm list

rvm rubies

   ruby-1.9.2-p330 [ x86_64 ]
=* ruby-1.9.3-p551 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

[Truby@master ~]$

B、使用一个ruby版本

[Truby@master ~]$ rvm use 1.9.2
Using /opt/Truby/.rvm/gems/ruby-1.9.2-p330

C、设置为默认版本

[Truby@master ~]$ rvm use 1.9.2 --default
Using /opt/Truby/.rvm/gems/ruby-1.9.2-p330
[Truby@master ~]$ rvm list default

Default Ruby (for new shells)

   ruby-1.9.2-p330 [ x86_64 ]

D、卸载一个已安装版本

[Truby@master ~]$ rvm remove 1.9.2
ruby-1.9.2-p330 - #removing src/ruby-1.9.2-p330..
ruby-1.9.2-p330 - #removing rubies/ruby-1.9.2-p330..
ruby-1.9.2-p330 - #removing gems....
ruby-1.9.2-p330 - #removing aliases
ruby-1.9.2-p330 - #removing wrappers....
ruby-1.9.2-p330 - #removing environments....

4、gemset的使用

rvm不仅可以提供一个多ruby版本共存的环境,还可以根据项目管理不同的gemset.

gemset可以理解为是一个独立的虚拟gem环境,每一个gemset都是相互独立的。

比如你有两个项目,一个是rails 2.3 一个是 rails 3. gemset可以帮你便捷的建立两套gem开发环境,并且方便的切换。

gemset是附加在ruby语言版本下面的,例如你用了1.9.2, 建立了一个叫rails3的gemset,当切换到1.8.7的时候,rails3这个gemset并不存在。

建立gemset

[Truby@master ~]$ rvm use 1.9.2
Using /opt/Truby/.rvm/gems/ruby-1.9.2-p330
[Truby@master ~]$ rvm gemset create rails3
ruby-1.9.2-p330 - #gemset created /opt/Truby/.rvm/gems/ruby-1.9.2-p330@rails3
ruby-1.9.2-p330 - #generating rails3 wrappers........

设定已建立的gemset做为当前环境

use 可以用来切换语言,或者gemset,前提是他们已经被安装(或者建立)

[Truby@master ~]$ rvm use 1.9.3
[Truby@master ~]$ rvm use 1.9.3@rails4

并可以在list命令中看到:

[Truby@master ~]$ rvm list

rvm rubies

   ruby-1.9.2-p330 [ x86_64 ]
=* ruby-1.9.3-p551 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

[Truby@master ~]$ rvm gemset list

gemsets for ruby-1.9.3-p551 (found in /opt/Truby/.rvm/gems/ruby-1.9.3-p551)
   (default)
   global
   rails3.1
=> rails4

清空gemset中的gem

如果你想清空一个gemset的所有gem,想重新安装所有gem,可以这样

[Truby@master ~]$ rvm gemset empty 1.9.2@rails3.1
Are you SURE you wish to remove the installed gems for /opt/Truby/.rvm/gems/ruby-1.9.3-p551@rails4?
(anything other than ‘yes‘ will cancel) > yes
installing gem /opt/Truby/.rvm/gem-cache/gem-empty-1.0.0.gem --local --no-ri --no-rdoc.
Successfully uninstalled gem-empty-1.0.0
Removed successfully.

删除一个gemset

[Truby@master ~]$ rvm gemset delete rails3.1
/opt/Truby/.rvm/gems/ruby-1.9.2-p330@rails3.1 did not previously exist. Ignoring.

项目自动加载gemset

rvm还可以自动加载gemset.

例如我们有一个rails3.1.3项目,需要1.9.3版本ruby.整个流程可以这样。

rvm install 1.9.3
rvm use 1.9.3
rvm gemset create rails3.3
rvm use 1.9.3@rails3.3

下面进入到项目目录(比如redmine,此为ror项目),建立一个.rvmrc文件。

在这个文件里可以很简单的加一个命令:

rvm use 1.9.3@rails3.3

然后无论你当前ruby设置是什么,cd到这个项目的时候,rvm会帮你加载 ruby 1.9.3和rails3.3 gemset.


本文出自 “大風” 博客,请务必保留此出处http://lansgg.blog.51cto.com/5675165/1579325

Centos系统搭建ror平台搭建

标签:rails   gem   rvm   gemset   

原文地址:http://lansgg.blog.51cto.com/5675165/1579325

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!