4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Ruby on Railsのローカル環境構築

Last updated at Posted at 2021-03-27

今までRailsアプリの開発環境は全部Dockerで作ってたけど、雑に作って挙動確認したい時とかにいちいちDockerで環境作るの面倒なので、ローカルにもRailsの環境を作っておく。

作るもの

  • DBはsqlite
  • Rubyのバージョンはrbenvで管理

前提

  • macOS Catalina 10.15.7
  • Homebrewが使える
  • シェルはzsh

rbenvをインストール&セットアップ

$ brew install rbenv ruby-build
$ rbenv -v      
rbenv 1.1.2
$ vim ~/.zshrc
.zshrc
eval "$(rbenv init -)"
$ source ~/.zshrc

Rubyをインストール

$ rbenv install --list # インストールすることが可能なRubyのバージョン一覧が表示される
$ rbenv install 2.7.2 # Ruby 2.7.2をインストール
$ rbenv versions # 現在インストールされているRubyのバージョン一覧
$ rbenv global 2.7.2 # 今回インストールしたバージョンのRubyを使用するように設定を変更
$ exec $SHELL -l
$ ruby -v
2.7.2 # 違うバージョンが表示されたら、シェルを再起動して再確認する

Railsをインストール

$ gem install rails -v "6.1.3.1"
$ exec $SHELL -l
$ rails -v
Rails 6.1.3.1

Railsアプリを作成、動作確認

$ rails new sample_app
$ cd sample_app
$ rails s

http://localhost:3000
にアクセスして表示を確認。

その他

  • システムのRuby(Macに元々入ってるRubyを使うと、パーミッションの問題でRailsがインストールできないからrbenvとか使った方が良い)
  • .zshrc内の記述について
    • evalは引数にセットしたコマンドを実行するコマンド
    • ここではrbenv init -を実行している
    • なぜ直接実行せず、evalを通しているのか?
      • rbenv init -の内部の処理でexportコマンドで環境変数を設定する処理がある
      • シェルスクリプトはサブシェル等で実行されるため、コマンド内で変数をexportしても元のシェルにはなんら影響がない
      • evalを使ってexportすると、元のシェルに環境変数を設定することができる
  • rails 6.1.3をインストールしようとしたら、mimemagic関連のエラーが出たから6.1.3.1に変更した

参考

4
5
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
4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?