Edited at

CentOSにrbenvでruby2.1.0インストール, あとnginxも。

More than 5 years have passed since last update.

最小構成のVMに色々いれて遊ぶ。


VM環境


  • CentOS 6.5

  • ネットワーク設定以外はまっさら。


やること


  1. rubyインストール

  2. nginxインストール

rubyはせっかくなので流行り(?)のrbenvでバージョン管理する。

コマンドはすべて一般ユーザー(rootじゃない)でやることを想定。


rbenvをいれてruby2.1.0をインストール

とりあえずコンパイルにgccが必要。あとrbenvを落としてくるのにgitが必要。

vimは好きで入れてる。

$ sudo yum -y install gcc git vim

$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

.bash_profileの設定を読み込む

$ exec $SHELL -l

次にrbenvにruby-buildプラグインを入れる。あとrubyコンパイル準備。

$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

$ sudo yum -y install libyaml libyaml-devel zlib zlib-devel readline readline-devel openssl openssl-devel libxml2 libxml2-devel libxslt libxslt-devel

いよいよruby2.1.0入れるよ。長いので気長に待つ。

$ rbenv install 2.1.0

$ rbenv rehash
$ rbenv global 2.1.0


nginxをインストール

nginxのインストールと80番ポートをあける。

$ sudo rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm

$ sudo yum install nginx
$ sudo vi /etc/sysconfig/iptables #80番ポートをあける
$ sudo /etc/init.d/iptables restart


とりあえずglobalのgemにbundlerだけ入れとく。

こうしておけば、あとはプロジェクトごとにbundle initして、bundle install --path vendor/bundle的なことをすればglobalのgemを汚さないで済む。

$ rbenv exec gem install bundler

$ rbenv rehash


試しにsinatraとsqlite3でも入れて簡易APIサーバーたてる準備(だけ)やってみる

ほげほげと調べたところ、nginx + unicornの組み合わせが良いらしいのでとりあえずunicornも入れとく。

(どうせここで書くのは準備だけ...)

$ sudo yum install -y sqlite-devel

$ mkdir ~/project_name
$ cd ~/project_name
$ bundle init
$ vim Gemfile
gem "sqlite3"
gem "sinatra"
gem "unicorn"

$ bundle install --path vendor/bundle

こんな感じでrubyプロジェクトがんがん作っていける環境ができたよ!