環境構築も爆速に!
開発効率に定評のあるRailsですが、環境構築も爆速にできてしまう点に特徴があります。
今回はMacでの説明になりますが、一気にやってしまいましょう!
インストールでは、Rubyのバージョンを管理するためにrbenvと、rbenvのプラグインでrbenvコマンドを利用できるようにするためのruby-buildを使います。
このあたりの説明はちょっと前の記事になりますが、以下に書いてあります。
ti-tomo-knowledge.hatenablog.com
ただ今回はまた上記の記事と内容は被ってしまうこともありますが、最初から説明していきます。
色々な用語が出てきますが、簡単に以下の流れと思ってください。
ほんとにざっくりです。
Homebrewの説明は。。。この手順を行う人には説明不要ですよね。ここは飛ばします。
Homebrewを使ってrbenv(rubyのバージョンを管理)とruby-build(rubyをインストールするプラグイン)をインストール
↓
rbenvとruby-buildでrubyをインストール(gemも使えるように)
↓
gemでbundlerをインストール
↓
bundlerを使ってRailsをインストール
といった流れになります。
では進めていきましょう。
構築手順
Homebrewのインストールは以下参考に(まだない人)
macOS(またはLinux)用パッケージマネージャー — Homebrew
rbenvとruby-buildをインストール
brew install rbenv ruby-build
初めてのセットアップでは、ここでバージョンの確認をするとsystemと出てきます。
Mac購入時のデフォルトのバージョンですね。
rbenv versions
インストールできるrubyの一覧を確認
rbenv install --list
今回はこの手順実施時に最新の「2.6.3」をインストール(結構時間かかります)し、バージョンを切り替えます。
rbenv install 2.6.3 rbenv global 2.6.3
バージョンを確認しましょう。
rbenv versions
以下のようになればOKです。
system * 2.6.3 (set by /XXXXXXXXX/.rbenv/version)
ここでrubyとgemのバージョンを確認すると、
ruby -v ruby 2.3.3p222 (2016-11-21 revision 56859) [universal.x86_64-darwin17] gem -v 2.5.2
rubyは2.3.3でgemが2.5.2と、バージョンが古いです。
以下を実行してbash_profileにrbenvのパスを通してください。
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
bash_profileを反映
source ~/.bash_profile
これで再度バージョンを確認すると、
ruby -v ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin17] gem -v 3.0.3
rubyは2.6.3でgemが3.0.3と、最新になりました!
bundlerのインストール
gem install bundler
Railsのインストール
必要なものは揃ったので、ここからはRailsのインストール作業になります。
まずはプロジェクトを作成するディレクトリに移動し、以下コマンドを実行してください。
bundle init
これでGemfileができており、このファイルを使えばプロジェクトごとにgem(ライブラリ)を管理できます。
Gemfileは以下のようになっており、
# frozen_string_literal: true source "https://rubygems.org" git_source(:github) {|repo_name| "https://github.com/#{repo_name}" } # gem "rails"
「gem "rails"」のコメントアウトを外してください。
# 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のプロジェクトを作成します。
bundle exec rails new .
色々聞かれますが、全部yを押してください。
さあ、残すは起動のみ
bundle exec rails s
以下のように表示されればlocalhost:3000で起動されています。
=> Booting Puma => Rails 5.2.3 application starting in development => Run `rails server -h` for more startup options Puma starting in single mode... * Version 3.12.1 (ruby 2.6.3-p62), codename: Llamas in Pajamas * Min threads: 5, max threads: 5 * Environment: development * Listening on tcp://localhost:3000 Use Ctrl-C to stop
railsコマンドのインストール
ところで、Railsではコマンドラインでrailsコマンドを多く使用するのですが、今のままでは毎回「bundle exec rails ここからコマンド」と打たなくてはいけなく、結構面倒です。
次からのコマンド入力を簡略化するためにもrailsコマンドを入れちゃいましょう。
まず今の状態で試しに「rails -v」と打ってみると、以下のようにgemでインストールせよ、とメッセージが出て来ます。
Rails is not currently installed on this system. To get the latest version, simply type: $ sudo gem install rails You can then rerun your "rails" command.
表示されているコマンドを実行してみましょう。
sudo gem install rails
すると以下のようにインストールが成功します。
Successfully installed rails-5.2.3 Parsing documentation for rails-5.2.3 Installing ri documentation for rails-5.2.3 Done installing documentation for rails after 0 seconds 1 gem installed
さあ、これで大丈夫だろうと再び「rails -v」と打ってみると。。。
Rails is not currently installed on this system. To get the latest version, simply type: $ sudo gem install rails You can then rerun your "rails" command.
あああああああ...、また同じメッセージが。
ここで結構ハマってしまう人がいるのですが、rbenvをrehashすれば問題解決です。
rbenv rehash
これで実行すると、
rails -v Rails 5.2.3
無事解決!