LoginSignup
1
3

More than 3 years have passed since last update.

Ruby on Railsを触ってみる〜環境構築編〜

Posted at

はじめに

最近転職サイトを見ていると、最近のイケイケの企業の使用言語としてRubyが多く見受けられます。またその中のほとんどの企業がRuby on Railsを使っているため、私も触ってみようと思います。
Railsの情報はネット上にあふれているためこの記事では特に新しいことは書いておらず先駆者の記事を参考にしておこなった自分の作業の備忘録となります。

Ruby on Railsの環境構築

macOSで環境構築をして行きます。
ほとんどの手順を以下の記事を参考にさせていただきました。
Ruby初学者のRuby On Rails 環境構築【Mac】

ターミナルを開く(mac初心者向け)

「command」+「space」でSpotlightを開いて「ターミナル」と入力。
ターミナルを選んで起動します。
今回のコマンドは全てこのターミナルから行います。

Homebrewのインストール

Homebrewのサイトに記載されている以下のコマンドを実行し、Homebrewをインストールします。

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Homebrewとは?
homebrewとは何者か。仕組みについて調べてみた

rbenvのインストール

こいつをいれるとRubyのバージョン管理ができるようになるらしい

$ brew install rbenv ruby-build

pathを通す

$ echo 'export PATH="~/.rbenv/shims:/usr/local/bin:$PATH"' >> ~/.bash_profile

rbenvの設定をローカルに反映

$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

.bash_profileの適用

$ source ~/.bash_profile

Rubyのインストール

{version}箇所は任意。まあ新しめのバージョンがいいと思います。
私は2.7.0をインストールしました。

$ rbenv install {version}

対象のバージョンをglobalで使えるようにする。
globalで基本となるバージョンを指定して、プロジェクトによってバージョンを変えたい場合は都度localで設定するのが良き。

$ rbenv global 2.7.0

最後にバージョンを確認

$ ruby -v

Bandlerのインストール

$ gem install bundler
$ bundler -v

Railsのインストール

インストールするディレクトリ作成

$ mkdir ~/rails_workspace

作ったディレクトリに移動

$ cd ~/rails_workspace

Gemfileを作成する

$ bundle init

Gemfileを編集する

$ vi Gemfile

「i」キーを押してINSERTモードに変更。
「# gem "rails"」となっている行を「gem "rails"」に変更

「esc」キーを押して「:wq」を入力し、編集終了。

Railsをインストール

$ bundle install --path=vendor/bundle

確認

$ bundle exec rails -v

プロジェクトを作成

$ bundle exec rails new test

作成したプロジェクトディレクトリに移動

$ cd test

railsの起動

$ rails server

だがしかしここで問題!

Node.js not installed. Please download and install Node.js

どうやらNode.jsが必要見たいなので、nodebrewを使ってインストールを行います。

nodebrewをインストール

$ brew install nodebrew

バージョンの確認

$ nodebrew -v

Node.jsをインストール

stable:安定版をインストール

$ nodebrew install-binary stable

上記コマンドでエラーが出た際は以下のコマンドを実施が再度コマンド実行

$ mkdir -p ~/.nodebrew/src

nodeのバージョン確認

$ nodebrew ls

v12.16.0
current: none

nodeの有効化
バージョン番号は合わせてください。

$ nodebrew use v12.16.0

pathを通す

$ echo 'export PATH=$HOME/.nodebrew/current/bin:$PATH' >> ~/.bash_profile

適用

$ source ~/.bash_profile

nodeのバージョン確認

$ node -v

-bash: node: command not found

はい???

インストールもpathも問題ないはずなのにnodeコマンドが実行できない。。
少し調べたらこのような記事が見つかりました。
HomebrewでインストールしたnodebrewではNode.jsやnpmが使えない

他の記事ではnodeが使えるようなので、バージョンや環境差異など何かが影響しているのかも。
ひとまずリンク先にある手順でnodeを再インストール

まずはアンインストール

$ nodebrew uninstall v12.16.0
$ nodebrew clear v12.16.0
$ brew uninstall nodebrew

CURLコマンドでnodebrewをインストール

$ curl -L git.io/nodebrew | perl - setup

nodeの確認

$ node -v
v12.16.0

できた!!!

railsの起動のため、プロジェクトディレクトリに移動

$ cd ~/rails_workspace/test

rails起動

$ rails server

~~
/webpacker.yml. Please run rails webpacker:install Error: No such file or directory 
~~

nodeではない別のエラーが。。。
「Please run rails webpacker:install」とおっしゃっているので以下のコマンドを実行してみる。

$ rails webpacker:install

するとまた別のエラーが。

Yarn not installed. Please download and install Yarn from https://yarnpkg.com/lang/en/docs/install/

yarnが必要とのことなのでこちらもインストール

$ brew install yarn

再度webpakerのインストールを行う

$ rails webpacker:install

うまくいきました。
次こそrailsを起動

$ rails server

=> Booting Puma
=> Rails 6.0.2.1 application starting in development 
=> Run `rails server --help` for more startup options
Puma starting in single mode...
* Version 4.3.1 (ruby 2.6.3-p62), codename: Mysterious Traveller
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://127.0.0.1:3000
* Listening on tcp://[::1]:3000
Use Ctrl-C to stop

無事起動しました。
この状態のままブラウザを使ってlocalhost:3000にアクセスします。
以下の画面が表示されれば成功です。

スクリーンショット 2020-02-14 20.10.16.png

最後に

ちょこちょこ詰まるところもありましたが、先駆者たちのおかげで比較的簡単に環境構築できました。次回はRailsをはじめようをやってみてrailsやMVCに対する理解を深めていきます。

bundlerやgemに関する理解が甘いため後ほどちゃんと確認をします。

その他参考にさせて頂いたQiita記事

【Mac】node.jsインストール方法
MacにNode.jsをインストール
Rails6 Webpackerでエラーが出た

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3