せっかく Ruby 2.0 も Rails 4(まだ beta だけど) も出て、Ruby on Rails を使って Web サイト一個作ろうかなーという気分になったのでとりあえず環境構築だけしてみた。
環境は VPS 上の Ubuntu 12.04 です。さくらのVPSスタンダードプランですね。
ruby2.0.0 のインストール
ruby 本体は rbenv を使用して入れます。ちょっと前に Fastladder を入れた時は rvm 使ってたんですけど、今回サーバ移転後でどうせなので違うものを使ってます。
$ sudo apt-get install rbenv
# apt で入る rbenv だけでは install コマンドが使用できないので github からダウンロードします。
$ cd repos/
$ git clone git://github.com/sstephenson/ruby-build.git
$ cd ruby-build/
$ sudo ./install.sh
# rbenv の設定
$ rbenv init
# 自動的に .zshrc に書き込む的なメッセージ出たけどなかったから手動
$ echo 'eval "$(rbenv init -)"' >> .zshrc
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> .zshrc
$ source ~/.zshrc
# ruby のインストール
# -l で表示されたリストにある中で一番新しいものをいれてます。
$ rbenv install -l
$ rbenv install 2.0.0-p0
$ rbenv global 2.0.0-p0
$ ruby --version
ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-linux]
Rails 4.0.0.beta のインストール
Ruby 2.0 が入ったら次は Rails を gem からいれます。
Rails のインストール時には bundler を使用しています。プロジェクトが増えた際に bundler にしておけば環境がごっちゃにならないから便利、とかいう認識で良いんですかね。
$ rbenv exec gem install bundler
$ rbenv rehash
$ cd rortest
$ cat << EOS > Gemfile
heredoc> source "http://rubygems.org"
heredoc> gem "rails" "4.0.0.beta1"
heredoc> EOS
$ bundle install --path vendor/bundle
# rails プロジェクトを作成
$ bundle exec rails new example --skip-bundle
$ cd example
$ bundle install --path vendor/bundle
# サーバ実行
$ bundle exec rails server -d
rails サーバ起動したら execjs で jsruntime が無いとかいうエラーが出たので Gemfile 内の gem 'therubyracer' のコメントアウトを外してやりなおしました。
あと外から繋げないなーって思ったらファイヤーウォール動いてたのでこれも設定変更しましょう。
$ sudo ufw allow 3000
これで port 番号 3000 (デフォルト) でサーバにアクセスしたら rails の最初の画面が表示されるはずです。
参考
Rails開発環境の構築(rbenvでRuby導入からBundler、Rails導入まで) #Rails #rbenv #Mac #macports #Ruby - Qiita