【Rails】rails5の環境構築方法を画像を使いながら丁寧に解説!

Rails

MacOSでのrailsの環境構築フローについて解説します。記事通りに環境構築すればあなたのPCでrailsサーバーを起動できる様になります。また環境構築でインストールするソフトウェアについてなぜ必要か解説するので、1つ1つのフローを理解しながら環境構築を進められます。

railsのロゴの画像

今回の記事は、Mac限定になるのでご注意ください。

rails5の環境構築フローを1つ1つ理解しながら進めよう!

railsの環境を構築する8Step!
リンクをコピーしました

MacOSでのrailsの環境構築フローは以下の8つです。

  1. コマンドラインツールのインストール
  2. Homebrewのインストール
  3. rbenvのインストール
  4. rubyのインストール
  5. mysqlのインストール
  6. railsのインストール
  7. bundlerのインストール
  8. railsの立ち上げ

環境構築フローを終えると、いよいよあなたもrailsを使ってwebアプリケーションを作成できます!
早速、環境構築をしていきましょう!

(Windowsでのrailsの環境構築方法は異なります。今回の記事はMac限定になるので、ご注意ください)

コマンドラインツールのインストール
リンクをコピーしました

まず初めにMacで利用できるコマンドラインツールをインストールしていきます。
コマンドラインツールをインストールすると、Webアプリに必要なソフトウェアをダウンロードできます。

ターミナル | コマンドラインのインストール方法
1
$ xcode-select --install

上のコマンドを打ったら下記の画像が出てくるのでクリックを押してください。

コマンドラインツールのインストール画像1

クリックすると使用許諾契約の同意書が表示されるので、読んで同意できれば「同意する」をクリックしてください。

コマンドラインツールのインストール画像2

そうするとコマンドラインツールのダウンロードが始まります。

コマンドラインツールのインストール画像3

ダウンロードが完了すれば、完了をクリックしてください。

コマンドラインツールのインストール画像4

インストールが完了したか確認するために、下記のコマンドを打ちましょう。

ターミナル | コマンドラインのインストール方法
1
2
$ xcode-select -v
xcode-select version 2370.

バージョンが表示されれば、コマンドラインツールをインストールできてます!
次はHomebrewをインストールしましょう。

Homebrewのインストール
リンクをコピーしました

Homebrewの画像

Homebrewとは、macOS用のパッケージマネージャーのことをいいます。Homebrewをインストールするとbrewというコマンドを使用できる様になり、brewコマンドを使ってこれからrailsでWebアプリケーションを開発していく上で必要になる便利なパッケージをインストールできます。(rails以外の他の言語のライブラリにも使用します)

それでは、Homebrewをインストールしましょう!

ターミナル | Homebrewのインストール方法
1
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Homebrewをインストールするには時間がかかります。

Homebrewのインストール画像1

Press RETURN to continue or any other key to abortと表示されれば、Enterを押してください。

Homebrewのインストール画像2

次にPasswordを入力する画面が表示されれば、Passwordを入力してEnterを押してください!

(passwordなので入力しても人から見られないように表示されませんが、しっかりと入力されています。)

ターミナルでHomebrewのインストールが始まると、いろいろなパッケージがダウンロードされていきます。

Homebrewのインストール画像3

最後にInstallation Successfull!と表示されるとHomebrewのインストール完了です。

Homebrewのインストール画像4

Homebrewが正常にインストールできているか、下記のコマンドで確かめてみましょう。

ターミナル | Homebrewのバージョン確認
1
2
3
4
$ brew -v
Homebrew 2.2.1
Homebrew/homebrew-core (git revision 9f1e6d; last commit 2019-12-09)
Homebrew/homebrew-cask (git revision 64b0c; last commit 2019-12-10)

しっかりとHomebrewのバージョンが表示されればインストール完了です。

これからbrewコマンドを使ってrailsに必要なパッケージをインストールしていきましょう。

rbenvインストール
リンクをコピーしました

rbenvパッケージをインストールしていきます。
その前に、rbenvとは一体何か?簡単に説明します。

rbenv
リンクをコピーしました

例えば、twitterがrubyのバージョン2.4で作成されていて、facebookがrubyのバージョン2.5で作成されているとします。

そうすると、「twitterのrubyを動かすには2.4のrubyを動かす」 「facebookを動かすときは2.5のrubyを動かす」と異なるrubyの複数のバージョンを利用しないといけません。

いちいちtwitter・facebookがどのrubyのバージョンを利用しているか覚えておくのは大変ですし、その度にバージョンの切り替えをするのは大変面倒です。

その際にrbenvを利用するとtwitterを動かすときは2.4のruby、facebookを動かすときは2.5のrubyと簡単に複数のrubyのバージョンを切り替えることができます。そのためrbenvはrailsエンジニアには大変便利で必要不可欠なパッケージです。

それではrbenvをインストールしましょう!

ターミナル | rbenvのインストール
1
$ brew install rbenv

インストールが完了すれば、rbenvが正常にインストールされているか確認しましょう。

ターミナル | rbenvがインストールできたか確認
1
2
$ rbenv -v
$ rbenv 1.1.2

上のようにバージョンが表示されればしっかりとインストールされています。

ruby-build
リンクをコピーしました

rbenvのインストールが完了すればruby-buildというパッケージも一緒にインストールされてます。ruby-buildはこの後rbenvを使ってrubyをインストールするのですが、その「rubyのインストール」をできる様にするrbenvのプラグインです。

ruby-buildが正常にインストールされているか確認しましょう。

ターミナル | ruby-buildがインストールできたか確認
1
2
$ ruby-build --version
ruby-build 20191111

上のようにバージョンが表示されればしっかりとインストールされています。

readline
リンクをコピーしました

ruby-buildと同様にrbenvのインストールが完了すれば、readlineというパッケージも一緒にインストールされてます。

readlineは、irbpryといったコンソールで日本語の入力ができる様になるプラグインです。

readlineがインストールできたか確認するコマンドは下記です。

ターミナル | readlineがインストールできたか確認
1
2
$ brew list | grep readline
$ brew info readline

listコマンドでreadlineと表示され、infoコマンドでreadlineの情報が出力されていればインストールできています。

rbenvのPATHを通す
リンクをコピーしました

rbenvをインストールできたので、installしたrbenvのPATHを通します。

PATHを通すというのはどういうことかというと、どのディレクトリでもコマンドを使用できる様になるということです。

例えば、lsコマンドを例に挙げるとls/binディレクトリの中にあります。/binのPATHを通していなければ、/bin/lsと打たないとlsコマンドでリスト表示はできないはずですが、PATHを通しているので、どのディレクトリからもlsコマンドを使える様になります。

ターミナル | rbenvでインストールしたrubyのバージョン一覧
1
2
3
4
5
6
# PATHを通しているのでどちらも同じ結果になる。
$ ls ~/.rbenv/versions
2.1.0 2.2.5 2.3.1 2.3.3 2.3.4 2.3.8 2.4.1 2.5.3 2.5.4 2.5.5 2.6.0 2.6.2

$ /bin/ls ~/.rbenv/versions
2.1.0 2.2.5 2.3.1 2.3.3 2.3.4 2.3.8 2.4.1 2.5.3 2.5.4 2.5.5 2.6.0 2.6.2

この様にどこからでもrbenvを使える様にPATHを通していきます。

ターミナル | ruby-buildがインストールできたか確認
1
2
3
4
5
6
7
8
# rbenvのpathを通している
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile

# rubyやgemがインストールするrubyの実行可能ファイルのラッパースクリプトであるshimsを有効にするコマンド
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

# rbenvのpathを通すコマンドとshimsを有効にするコマンドをbash_profileに追記したので、それを読み込む
$ source ~/.bash_profile

これでrbenvのPATHを通すことができたので、どこからでもrbenvを使用できる様になります。
それではいよいよrbenvを使ってrubyをインストールしていきます。

rubyのインストール
リンクをコピーしました

先ほどrbenvのインストールの部分でも説明しましたが、rbenvを使うと異なる複数のrubyのバージョンを簡単に切り替えられる様になります。私の環境でrbenvでインストールしたrubyの一覧が下記になります。

ターミナル | rbenvでインストールしたrubyのバージョン一覧
1
2
$ ls ~/.rbenv/versions
2.1.0 2.2.5 2.3.1 2.3.3 2.3.4 2.3.8 2.4.1 2.5.3 2.5.4 2.5.5 2.6.0 2.6.2

なぜこのインストールされた複数のrubyのバージョンの切り替えをスムーズに行えるかというと、rbenvを使ってrubyをインストールしているからです。ですから、必ず異なるバージョンのrubyをインストールするときは、rbenvを使ってインストールしましょう。まだrbenvにrubyのバージョンは何も入っていないので、最新のrubyのバージョンをインストールしていきます。

ターミナル | rbenvでrubyをインストール
1
$ rbenv install 2.6.5

インストールが完了すれば、rubyがインストールされたか確認します。

ターミナル | rbenvでインストールしたrubyのバージョン一覧
1
2
$ ls ~/.rbenv/versions
2.1.0 2.2.5 2.3.1 2.3.3 2.3.4 2.3.8 2.4.1 2.5.3 2.5.4 2.5.5 2.6.0 2.6.2 2.6.5

lsした結果に2.6.5が入っていればインストールできています。

ただ2.6.5を入れただけでまだ2.6.5のrubyのバージョンを反映はできておりません。
今のrubyのバージョン確認をしましょう。

ターミナル | 現在のrubyのバージョン確認
1
2
$ ruby -v
ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin18]

ここで表示されたrubyのバージョンは元々Macにデフォルトで入っているrubyのバージョンであり、rbenvで先ほどインストールした2.6.5のバージョンでないことが確認できます。

ですから、2.6.5のrubyのバージョンに反映させる必要があるので、反映させましょう。

ターミナル | 現在のrubyのバージョン確認
1
2
3
4
5
# システム全体で使う ruby のバージョンを指定する。
$ rbenv global 2.6.5

# 先ほどinstallしたrubyの2.6.5のバージョンを使用できる様に設定する
$ rbenv rehash

これで先ほどインストールした2.6.5のrubyのバージョンを使える様になりました。
rubyのバージョンを確かめてみましょう。

ターミナル | rubyの2.6.5のバージョン確認
1
2
$ ruby -v
ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-darwin19]

2.6.5と表示されていれば、反映されてます。

これでrbenvを通してrubyのインストール・設定が完了しました。
これから、Webアプリを作るためのrails・データを保存するためのmysqlのインストールと設定をしていきます。

mysqlのインストール
リンクをコピーしました

アプリケーションのデータを保存するために、mysqlをインストールしていきます。データを保存するとはどういうことか説明します。例えば、twitterで投稿したものを私たちは普段当たり前の様にタイムラインでみていますが、私たちが投稿したデータはデータベースというものに保存されています。

そしてタイムラインはそのデータベースからデータを取り出して表示します。そのデータを保存する先として、データベースであるmysqlがWebアプリケーションを作るためには必要になります。またmysqlは無料で誰でもインストールでき、オープンソースでもあるので、今世界でもっとも利用されているデータベースになります。

それではアプリで投稿したデータを保存できる様にするために、mysqlをインストールしていきましょう。

ターミナル | mysqlのインストール
1
2
3
$ brew install mysql@5.7
$ echo 'export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"' >> ~/.bash_profile
$ source ~/.bash_profile

これでmysqlのインストールが完了しました。

mysqlがインストールできたか確認しましょう。

ターミナル | mysqlのインストール
1
2
$ mysql --version
mysql  Ver 14.14 Distrib 5.7.27, for osx10.15 (x86_64) using  EditLine wrapper

5.7のバージョンが表示されていれば、無事インストールできています。
mysqlを利用するために、インストールしたmysqlを起動させる必要があります。

ターミナル | mysqlの起動
1
2
3
$ mysql.server start
Starting MySQL
 SUCCESS!

この様に表示されていれば、起動できています。

起動できればmysqlに入ることができるので、入ってみましょう。

ターミナル | mysqlに入る
1
$ mysql -uroot

下記の画像の様に表示されていればmysqlに入っています。
入ることが確認できれば、mysqlからexitを入力してEnterで抜けましょう

mysqlに入ったときの画像

これでアプリにデータを保存するmysqlのインストールが完了しました。続いてmysqlの自動起動の設定を行います。

mysqlの自動起動設定
リンクをコピーしました

mysqlをインストールできましたが、今の状態だとパソコンを再起動などするとmysqlサーバーも自動的にstopしてしまいます。そうすると再起動などをするたびにmysql.server startをしなければいけません。これは大変面倒です。

そこでmysqlをわざわざ起動しなくても自動で起動できる様に、自動起動の設定をしていきます。自動起動の設定をすると毎度mysql.server startをしなくても自動でmysqlを起動できて便利なので、自動起動の設定をしていきましょう!

自動起動の設定をするには、Homebrewのサービス管理機能であるhomebrew-servicesをインストールする必要があります。homebrew-servicesをインストールするとbrew serviceというコマンドが使え、mysqlやredis、nginxなどwebサービスに必要なソフトウェアを自動起動できる様になります。それではまずhomebrew-servicesをインストールしていきます。

ターミナル | homebrew-servicesをインストール
1
$ brew tap homebrew/services

これでhomebrew-servicesを使用できる様になりました。homebrew-servicesをインストールするとbrew servicesというコマンドが使える様になります。

続いてmysqlを自動起動できる様に設定していきます。

ターミナル | mysqlの自動起動設定
1
$ brew services start mysql

これだけでmysqlが自動起動する様になりました。これからわざわざmysql.server startをしなくても自動でmysqlが起動されます。

また無料で利用できるmysqlの管理ソフトSequel Proも便利なのでインストールしましょう!

このツールを使うとmysqlの中にあるデータが見やすくなったり、CSVダウンロードも容易にできるので、mysqlユーザーには重宝されているツールです。

それではいよいよrubyのフレームワークであるrailsをインストールしていきます。

railsのインストール
リンクをコピーしました

railsとはrubyのフレームワークで、railsを使うとwebアプリケーションの作りが複雑にならずに、簡単にWebアプリケーションの開発ができる様になります。railsについての詳しい解説はRuby on Railsを徹底解説を参照して下さい。

それでは、railsをインストールしていきます。
(railsのインストールには時間がかかります。)

ターミナル | railsのインストール
1
2
3
4
5
$ gem install rails -v '5.2.4'
...
# 中略
...
Successfully installed rails-5.2.4

たくさんログが表示されますが、最終的に「Successfully installed rails-5.2.4」と表示されていればインストールが成功しています。

インストール成功の表示が確認できれば、次にrailsを立ち上げる上でbundlerというライブラリをインストールする必要があるので、bundlerをインストールしていきます。

bundlerのインストール
リンクをコピーしました

bundlerとは簡単にいうと、railsで使うライブラリのバージョン管理をしてくれる便利なライブラリです。bundlerについては、結局bundlerって何?bundlerの仕組みを図解形式で徹底解説に詳しく書いているので、こちらの記事を参照ください。

それではbundlerをインストールします。

ターミナル | bundlerのインストール
1
$ gem install bundler
ターミナル | bundlerがインストールできたか確認
1
2
$ bundle -v
Bundler version 2.0.2

bundlerのバージョンが表示されていればbundlerはインストールできています。
これでrailsの準備は整ったので、いよいよrailsアプリを立ち上げていきます。

railsの立ち上げ
リンクをコピーしました

前章まででrailsの環境は整ったので、いよいよrailsアプリを立ち上げて、webサイトに表示させます。
railsの雛形を作る下記のコマンドを打ちましょう!

railsの雛形を作るコマンドの詳しい使い方は、rails newコマンドのいろいろなオプションの使い方を分かりやすく解説を参照してください。

ターミナル | railsの立ち上げ
1
$ rails _5.2.4_ new first_create_app

するとfirst_create_appというディレクトリができてます。これがすでにrailsアプリケーションになります。

このfirst_create_appに移動しましょう。

ターミナル | first_create_appに移動
1
$ cd first_create_app

移動できれば、もうすでにrailsアプリのディレクトリにいるので、railsを起動してwebアプリを立ち上げます。

ターミナル | railsの起動
1
2
3
4
5
6
7
8
9
10
11
$ rails s

=> Booting Puma
=> Rails 5.2.4 application starting in development
=> Run `rails server -h` for more startup options
Puma starting in single mode...
* Version 3.12.2 (ruby 2.4.1-p111), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://localhost:3000
Use Ctrl-C to stop

この様に表示されれば、起動できています。

それでは、ブラウザを開いて、localhost:3000と打ち込んでみましょう。

下記の様な画像が表示されましたか?

railsを立ち上げた画像

画像の通りに表示されていれば、おめでとうございます!railsを無事起動することができました!
これからrailsでwebアプリをどんどん作っていってください!

まとめ
  • rbenvはrubyの複数のバージョン切り替えを簡単にするwebアプリケーションの開発に必須のパッケージ
  • mysqlはwebアプリのデータの保存先に用いられることが多いので、railsではデータベースはmysqlを使うことが多い
  • rails newコマンドを使ってrailsの雛形を簡単に作れる