rbenvを使ってMacにRuby on Railsの開発環境を構築【初心者向け】

Ruby on Railsは数多くのサービスに利用されていて、Web開発者であれば、一度は名前を耳にしたことがあるであろう、スタンダードなフレームワークになっています。

今回は、初学者の方のために、Docker等は使わず、Mac上に直接開発環境を構築する方法を紹介します。

開発環境はrubyはrbenvを使ってインストールしていきます。

rbenvのインストール(最初だけ)

githubからrbenvをインストールしてきます。今回は~/.rbenvにインストールします。

git clone https://github.com/sstephenson/rbenv.git ~/.rbenv

折角rbenvをインストールしましたが、今のままではパスが通っていないので、rbenvコマンドをシステムが認識できません。パスを通すために~/.bash_profileに以下を追記しましょう。

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

追記したら、source ~/.bash_profileして、.bash_profileを読み込ませます。

rubyのインストール(最初だけ)

rubyのインストールをするためにruby-buildをインストールします。

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

さて、いよいよ実際にrubyをインストールしましょう。rbenv install -lを実行すると、インストールできるrubyのバージョンが一覧表示されます。今回は現時点での最新版の2.1.2をインストールすることにしましょう。

rbenv install 2.1.2

次にデフォルトで使用するrubyのバージョンを指定します。

rbenv global 2.1.2

ここでは特に何も指定しなくても、プロジェクトディレクトリに.ruby-versionというファイルを用意して

2.1.2

と書いておいてあげれば、自動的にそのバージョンに切り替えてrubyが実行されます。

bundlerのインストール(最初だけ)

ここまで来たら、gemと呼ばれるrubyのライブラリを管理するコマンドが使えるようになっているのでgembundlerをインストールしましょう。

gem install bundler

bundlerはrubyのライブラリをGemfileというファイルに記述して管理することができるようにするGemで、railsではデフォルトでこのbundlerを採用しています。

railsのインストール(毎回)

まずはGemfileを作るために以下のコマンドを叩きましょう。

bundle init

Gemfileができているとおもうので、中身を以下のように編集します

# frozen_string_literal: true

source "https://rubygems.org"

git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }

gem "rails" # コメントアウトを外す

これで準備は完了です!以下のコマンドを叩いて、railsをインストールしましょう!

bundle install --path=vendor/bundle

railsアプリケーションを作成(毎回)

railsのアプリケーションを作るのに便利なrailsコマンドというものが用意されています。最初はrails newコマンドでRuby on Railsのひな形を作りましょう。bundle execは今bundlerで作った環境で実行できるコマンドを呼び出すためのおまじないと思っておけば最初のうちは十分だと思います。

bundle exec rails new application_name -d mysql

最後のmysqlの部分は使用するデータベース管理システムを記述します。例えば、postgresqlを使用したかったら、rails new application_name -d postgresqlになります。デフォルトではsqliteを使うようになっているので、好きなデータベースを使ってあげましょう。

以下のコマンドを叩けばrailsのサーバーが起動します。

bundle exec rails s

デフォルトではhttp://localhost:3000にアクセスするとrailsのページが表示されると思います。あとはDBの設定やルーティングの設定をすることで、開発を始められます。

まとめ

実際は別にrbenvを使ってインストールする必要はなくて、Macに標準でインストールされているgemを使っていきなりgem install railsでインストールすることもできます。ただ、gemの管理や様々なrubyバージョンで開発したいとき簡単に切り替えできたほうが便利なので、Mac上に直接、開発環境を構築する際はrbenvをおすすめします。

最近はDocker上で環境を整えることのほうが多いかもしれませんね。