install-ruby.md
2.95 KB
安装Ruby和gemset
请先完成配置CentOS。
安装和管理Ruby我认为最好的工具就是rbenv,因为之前用过RVM,对比后发现rbenv更优雅,RVM有的rbenv全都有,RVM没有的,rbenv也做到了,真正让人不操心。
按照 https://github.com/rbenv/rbenv 的说明安装,在CentOS上,简述步骤如下:
$ git clone https://github.com/rbenv/rbenv.git ~/.rbenv
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
$ type rbenv # 测试一下rbenv是否安装成功(需要先退出当前bash窗口再测试)。如果显示"rbenv is a function"说明安装成功
$ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build # 安装ruby-build作为rbenv的ruby安装插件
$ yum install -y readline-devel gcc-c++
$ rbenv install -l # 列出所有可以安装的ruby versions
$ git clone git://github.com/jf/rbenv-gemset.git $HOME/.rbenv/plugins/rbenv-gemset # 安装ruby-gemset作为rbenv的gemset管理插件
这时候,你可能想要进入你的ruby项目文件夹中,把本项目的Ruby版本和gem安装好了。
$ cd /path/to/your_project # 看一下有没有 .ruby-version 和 .rbenv-gemsets 这两个文件。如果没有,说明项目还没有用rbenv,你可以问下开发者为什么没有用。如果有,继续
$ less .ruby-version # 看看这个项目用到的ruby版本(假设你看到的是2.2.3)
$ rbenv install 2.2.3 # 安装某个版本的ruby,此处以2.2.3版本为例。这步完成,Ruby就安装好了。可以通过命令`rbenv global 2.2.3`使ruby在任何path中都可以运行。
$ ruby -v # 查看下ruby版本,看是不是刚才安装的版本(2.2.3)。如果是,说明ruby已经完美安装好了。注意,这里你是在 /path/to/your_project 这个目录下看到的ruby版本就是本项目用到的ruby版本,在其它目录可能就不是(2.2.3)了,这就是rbenv的厉害之处,保证本项目和其它项目的ruby版本不冲突。
请参考 http://gems.ruby-china.org/ 把gem源设置下,步骤如下:
$ gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/
$ gem sources -l # 确保只有 gems.ruby-china.org
$ gem install bundler # 安装bundler,rbenv默认是没有安装bundler的,我们的项目gems基本上都是用bundler管理的
$ bundle config mirror.https://rubygems.org https://gems.ruby-china.org
$ less .rbenv-gemsets # 看下gems最终会安装到哪个目录
$ bundle # 安装所有的gems(需要先退出当前bash窗口后,再重新进入刚才退出的目录后执行)这时候可能会有pg native extention的报错,解决方法:
$ curl -O http://yum.postgresql.org/9.5/redhat/rhel-6-x86_64/pgdg-centos95-9.5-2.noarch.rpm #根据当前环境版本$ cat /etc/redhat-release 进行修改
$ rpm -ivh pgdg-centos95*.rpm
$ yum install postgresql95-devel -y
$ gem install pg -- --with-pg-config=/usr/pgsql-9.5/bin/pg_config