`

ruby版本控制 rvm安装

阅读更多

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

https://rvm.io/

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

这里所有的命令都是再用户权限下操作的,任何命令最好都不要用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列表里面的都可以拿来安装。

  • 使用一个ruby版本
rvm use 1.9.3

如果想设置为默认版本,可以这样

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开发环境,并且方便的切换。

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)就可以了。

 

转载地址:http://ruby-china.org/wiki/rvm-guide

 

 

分享到:
评论

相关推荐

    使用RVM实现控制切换Ruby/Rails版本

    在学习Ruby on Rails的过程中,不同教程使用的Ruby和Rails版本不一样,为了保持和教程中使用的版本一致,我们可以用RVM(Ruby Version Manager)来控制当前的Ruby/Rails版本,方便切换。 RVM的安装在这里不是重点,...

    rvm-master.tar.gz

    在学习Ruby on Rails的过程中,不同教程使用的Ruby和Rails版本不一样,为了保持和教程中使用的版本一致,我们可以用RVM(Ruby Version Manager)来控制当前的Ruby/Rails版本,方便切换。

    Ruby的安装与运行

    版本控制系统:rvm(rvm.io)、rbenv rvm 查看ruby版本 rvm list known 安装 rvm install 2.2.1 帮助 rvm --help 用户手册 : man rvm rbenv OSX下用brew安装 windows下安装通过rubyInstaller 学习资料 ...

    fishing-for-rubies:鱼壳RVM支持

    控制是否应自动加载每个目录的RVM。 默认情况下,自动加载功能处于关闭状态 有用的消息会告诉您有关如何激活RVM或更改自动加载设置的信息。 演示! 安装 安装 git clone ...

    .dotfiles:Danne 的点文件

    用于版本控制的 用于 HTTP 网络通信的 用于系统自动化的 用于 Ruby 版本构建和管理的 在设置之前,您真的希望安装上述工具。 如果使用 ,以下命令应该为您排列这些: $ sudo apt-get install git curl ruby 接...

    MailServer:一个功能齐全的电子邮件系统,用 Ruby on Rails 编写

    自述 设置说明Ruby 版本:1.9.3 Rails 版本:4.1.8(通过 RVM 安装的最新版本) 通过以下方式在所需目录中创建一个 rails 项目: rails new <project> 在MYSQL中创建空数据库通过更改“database.yml”的开发环境连接...

    my-rails-dev-box:我的Rails开发箱

    Ruby / Rails RVM Ruby 2.0.0、2.1.0和2.2.0 邦德勒源代码控制吉特资料库SQLite的MySQL PostgreSQL(9.1) MongoDB 快取Redis(2.6.5) 杂项t MailCatcher启动和运行有哪些要求? [VirtualBox]( ) [Vagrant 1.1+]...

    awnscanner:Dawn是用于Ruby编写的Web应用程序的静态分析安全扫描程序。 它支持Sinatra,Padrino和Ruby on Rails框架

    Dawnscanner-用于ruby Web应用程序的上升安全扫描器 ...当您在代码上运行awnsscanner时,它将解析项目Gemfile.lock以查找所使用的gem,并尝试检测您正在使用的ruby解释器版本,或者您在最喜欢的ruby版本管理工具(RVM,

    大学生社团信息管理系统

    安装rvm 1.29.3 安装ruby 2.4.1 安装bundle 1.16.1 根目录下 bundle install 运行sql文件,导入数据到数据库[/db/Dump20180318.sql] 修改数据库配置文件,配置帐号密码 开发环境启动 bundle exec rails s, 浏览器访问...

    Appanzee:使用 Cucumber 和 Ruby 的 Appium 测试套件以及一些用于猴子测试和控制 iOS 模拟器的便捷工具

    用于需要现有数据的测试- 用于测试 CoreLocation 功能的模拟真实运动有关更多信息,请查看以下文档: , 在本地测试之前安装这些(如果你还没有): 安装 Ruby: \curl -L https://get.rvm.io | bash -s stable --...

    switchboard:通过 Ryu REST 路由器控制器进行按需 SDN 网络链接配置的 Web 应用程序

    总机 为运行 Ryu REST 路由器的 SDN 控制器按需配置 SDN 网络链接。 Switchboard 允许授权... 如果您的系统上需要有多个 Ruby 版本,Ruby 版本管理器(RVM - 请参阅 )可能会很好。 1.) 看看这个 github 项目: gi

    在Docker中自动化部署Ruby on Rails的教程

    为了更好的展示,我使用Ruby 2.2.0和Rails 4.1.1 在终端运行: $ rvm use 2.2.0 $ rails new && cd docker-test 创建一个基本的控制器: $ rails g controller welcome index ……,然后编辑 routes.rb ,...

    puppet_stack:安装和管理Puppet Master,The Foreman和smart-proxy

    版本控制 分枝 测验 流浪汉 ##概述 该模块将帮助您安装和管理以下内容: 木偶大师 工头 智能代理 此模块还了解,Puppet Master可以扮演不同的角色: 一体机(aio),是提供目录的木偶主机,并且是证书颁发机构...

    polcode:警察代码

    Polcode Academy - Ruby on Rails 测试项目如何进行设置: 通过 RVM 安装 Ruby 2.2.0 准备“捆绑安装” 运行 rake db:migrate 使用 rake db:seed 为所需数据设置种子数据库通过“rails s”启动服务器葡萄 使用...

    devday-regie:Digital Dev Day 20会议现场视频控制室的系统设置

    为虚拟开发日配置视频控制室 此剧本配置服务器,以用作的视频控制室。 该系统通过远程控制。 由于我们的服务器具有限制为1024x768...安装Ruby,例如,使用rvm : \curl -sSL https://get.rvm.io | bash -s stable --

    craigslist_monitor:用于观看 Craigslist 相关帖子的脚本,因此您不必

    Craigslist 监视器 用于观看 Craigslist 相关帖子的脚本,因此您不必这样做。... and install Ruby 1.9 if you need (RVM will tell you the command) $ gem install bundler $ bundle install 配置 根据您的喜好

    railsbridge-virtual-machine:Railsbridge 虚拟机

    手动替代包括手动安装 Xcode、RVM/rbenv/chruby 等。 此手动过程速度较慢,占用更多带宽,并且更容易出错。 与不同的,可以调整 Railsbridge 虚拟机以支持最新版本的 Rails。 研讨会参与者注意事项: 虚拟机创建了...

    json-rt-api:JSON API与Request Tracker CLI界面进行交互

    该服务公开了JSON API,并使用“ rt”命令行工具来控制RT。 建造 通常,使用rvm可能是一个好主意。 但是,您真正需要的是可以工作的JRuby。 $ gem install bundler $ bundle install $ rake jar 设置 在...

Global site tag (gtag.js) - Google Analytics