macOSにRuby on Railsをインストール

  • このエントリーをはてなブックマークに追加

スポンサーリンク

この記事はmacOSにRuby on Railsの開発環境をセットアップするための方法を書いています。

概要

macOS 12 MontereyにRuby on Railsの開発環境をセットアップします。

記事作成時点での最新バージョンをインストールします。

macOSのバージョンがこれより古い場合でもほとんどが互換性があります。もしエラーなどの問題が発生した場合はGoogleで検索してみましょう。「mac rails <エラー内容>」などで解決策が見つかる可能性は高いです。

またインストールの作業はターミナルで行います。

もしターミナルやコマンドラインが分からない場合は先にProgateのCommand Line 基礎編Git等で学習すると良いと思います。

ターミナルでZSHを使うようにする

最新のmacOSではターミナルのデフォルトがBashからZSHになっています。そのため、 ~/.bash_profileではなく~/.zshrcに設定を追加していく必要があります。

まずは自分のmacがBashまたはZSHどちらを使用しているか調べます。以下のコマンドを実行します。

$ echo $SHELL
# /bin/zsh

echo $SHELLと実行して/bin/zshと表示されれば既にZSHを使用しています。

もしZSHを使用していなければ、ターミナルでZSHを使用するように変更するため以下のコマンドを実行します。

$ chsh -s /bin/zsh

この時にパスワードの入力を求められたら入力してください。

Homebrewをインストールする

次にHomebrewをインストールする必要があります。Homebrewは様々なソフトウェアをmacOSに簡単にインストールするためのもので、パッケージ管理システムと呼ばれています。

Homebrewを動かすにはXcode Command Line Toolsというものが必要です。これはHomebrewをインストールする際に一緒にインストールされます。

もし「Xcode Command Line Toolsをインストールするか」といった英語が表示されたら指示に従ってインストールしてください。

ターミナルで以下のコマンドを実行します。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

インストールには結構な時間がかかります。

Homebrewがインストールできたか確認するには、ターミナルで以下のコマンドを実行します。

$ brew -v
# Homebrew 3.4.11
# Homebrew/homebrew-core (git revision 6e07b7383f3; last commit 2022-05-22)
# Homebrew/homebrew-cask (git revision f99483ed76; last commit 2022-05-22)

3.4.11のような数字(数字は何でも良い)が表示されていればインストール完了です。

Rubyをインストールする

Ruby 3.1.2をインストールします。

Homebrewをインストールしたので、これを使ってRubyをインストールすることができます。

Rubyには様々なバージョンがあり、それらを管理できるようにrbenvを使用します。

ターミナルで以下のコマンドを実行します。

$ brew install rbenv ruby-build

続いて、ターミナルを開くたびにrbenvが読み込まれるようにZSHに設定を追加します。

$ echo 'if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi' >> ~/.zshrc
$ source ~/.zshrc

Rubyのインストールとデフォルトのバージョンを指定するために、ターミナルで以下のコマンドを実行します。

インストールには結構な時間がかかります。

$ rbenv install 3.1.2
$ rbenv global 3.1.2

Rubyのインストールとデフォルトのバージョンが設定されたことを確認するために、ターミナルで以下のコマンドを実行します。

$ ruby -v
# ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-darwin21]

3.1.2という数字が表示されていればインストール完了です。

もしうまくいかない場合は、ターミナルを再起動すると解決することがあります。

Gitを設定する

バージョン管理システムにはGitを使用するので、Githubのアカウントと合わせて設定しておきます。

もしGithubのアカウントを持っていない場合は、将来的にも役に立つので必ず登録しましょう。こちらから登録できます。

ターミナルで以下のコマンドを実行します。

なお、YOUR NAMEとYOUR@EMAILの部分はGithubに登録したものに変えて実行してください。

$ git config --global color.ui true
$ git config --global user.name "YOUR NAME"
$ git config --global user.email "YOUR@EMAIL.com"
$ ssh-keygen -t rsa -C "YOUR@EMAIL.com"

次に新しく生成されたSSHキーをGithubに設定します。

ターミナルで以下のコマンドを実行して、表示内容をコピーしてください。

$ cat ~/.ssh/id_rsa.pub

# ssh-rsa <ランダムな長い文字列>

必ずssh-rsaから最後までコピーします。

Githubのこちらにアクセスして「New SSH key」ボタンを押してコピーした内容を貼り付けて保存します。下の画像を参考にしてください。



ここまで終わったら、うまくできたかを確認します。ターミナルで以下のコマンドを実行してください。

$ ssh -T git@github.com

次のようなメッセージが表示されれば完了です。

Hi harayama-developmer! You've successfully authenticated, but GitHub does not provide shell access.

Railsをインストールする

Rails 7.0.2.4をインストールします。

ターミナルで以下のコマンドを実行してください。

$ gem install rails -v 7.0.2.4

Railsがインストールされたか確認するために、ターミナルで以下のコマンドを実行してください。

$ rails -v
# Rails 7.0.2.4

もし上記のような表示にならなかった場合は、rbenv rehashを実行するか、ターミナルを再起動すると解決することがあります。

データベースのセットアップ

Railsで使用する主なデータベースは3種類あります。

  • sqlite3 (デフォルト)
  • MySQL
  • PostgreSQL

sqlite3

sqlite3はデフォルトのデータベースとしてRailsと一緒にインストールされますが、macOSではバージョンによってはうまく動かない場合があるためHomebrewでインストールします。

ではsqlite3をインストールします。ターミナルで以下のコマンドを実行してください。

$ brew install sqlite3

これだけでRailsの開発はスタートできますが、sqlite3はデータの保存をディスク上(Railsが動いているコンピュータ上)にします。

そのため、本番環境では別途データベースサーバーを作るのが一般的です。この時にMySQLやPostgreSQLが選択肢になります。

会社によってどちらかに決まっていたりしますが、そうでなければ自分が使いやすい方を選択すれば良いです。

初心者の場合やデータベースに不慣れな場合は、PostgreSQLを使用することをお勧めします。

MySQL

MySQLはHomebrewを使ってインストールすることができます。

$ brew install mysql

インストールが完了すると、いくつかのコマンドが実行できるようになります。

Railsで開発するためには予めMySQLが起動しておく必要があります。

MySQLを起動させるには、ターミナルで以下のコマンドを実行します。

$ brew services start mysql

また、デフォルトのユーザー名はrootとなっておりパスワードなしでアクセスできます。

PostgreSQL

PostgreSQLはHomebrewを使ってインストールすることができます。

$ brew install postgresql

インストールが完了すると、いくつかのコマンドが実行できるようになります。

Railsで開発するためには予めPostgreSQLが起動しておく必要があります。

PostgreSQLを起動させるには、ターミナルで以下のコマンドを実行します。

$ brew services start postgresql

また、デフォルトのユーザー名はmacOSのユーザー名となっておりパスワードなしでアクセスできます。例えば、現在ログインしているmacのユーザー名がsatoなら、その名前でアクセスできます。

最初のRailsアプリを作成する

さて、準備が整いました。

myappという名前で、最初のRailsアプリケーションを作成してみましょう。

$ rails new myapp

### hotwireをインストールしない場合
$ rails new myapp --skip-hotwire

### MySQLを使いたい場合
$ rails new myapp -d mysql

### PostgreSQLを使いたい場合
# あとで必ずconfig/database.ymlのusernameを
# macにログインしているユーザー名に変更する必要があります。
$ rails new myapp -d postgresql

上記コマンドを実行すると新しくmyappという名前のディレクトリが作成されます。

ターミナルでmyappというディレクトリに移動します。

$ cd myapp

MySQLまたはPostgreSQLを使用している場合は、config/database.ymlのusernameやpasswordを指定したものに変更して保存する必要があります。

次にmyapp用のデータベースを作成します。

ターミナルで以下のコマンドを実行してください。

$ rails db:create

もしここで、Access denied for user XXXX といったような表示になった場合は、config/database.ymlのusernameとpasswordが正しいか確認してください。

最後にRailsサーバーを起動します。

ターミナルで以下のコマンドを実行してください。

$ rails s

http://localhost:3000/ にアクセスして次のような表示になっていれば成功です。



これでmacOSでのセットアップは完了です。

Ruby on Railsでアプリケーションの開発をスタートできます。

このmyappは学習用として色々と試してみるのに使うのが良いと思います。

補足

別のRailsアプリを作りたい場合は、一度現在のディレクトリから移動してください。

$ cd ..
# 一つ上のディレクトリに移動する

$ cd
# ホームディレクトリに移動する

まとめ

この記事ではmacOSにRuby on Railsをインストールする方法を書きました。

インストールした手順は以下の通りです。

  • ターミナルでZSHを使うように設定する
  • Homebrewをインストールする
  • Rubyをインストールする
  • Gitを設定する
  • Railsをインストールする
  • データベースのセットアップ
  • 最初のRailsアプリを作成する

これでmacOSでRuby on Railsを使ったアプリケーション開発の準備ができました。

次のステップとしては、Railsガイドを読みながらRailsについて詳しく学ぶことをお勧めします。

スポンサーリンク

  • このエントリーをはてなブックマークに追加