概要
MacOSを使っていて、初めてRails環境をセットアップしたいなとなった時ににやる手順です。
Rubyはバージョン切り替えにrbenvを使用しているので、あとからバージョン変更可能です。
データストアはsqliteではなく、本番でも使えいやすいようにMySQLを使用、ただしMySQLの実行はMacOSのbrewで起動できるものを採用しています。
環境
- MacOS 10.14.2
- brewが使える
- rbenvが使える
- Rubyは2.5.Xでやる
- Railsは5.2.0
- rbenvでRubyバージョンを指定する
- brewで入れたMySQLを使う(MacでMySQLを動かす)
指定したバージョンのRubyをインストールする
ruby-buildをアップグレードして最新のRubyをインストールできるようにする
brew upgrade ruby-build
rbenvで特定のRubyをインストールする
rbenv versions
rbenv install --list
rbenv install 2.5.1
アプリケーションを作成するディレクトリへ移動して、Rubyのバージョンを指定する
rbenv local 2.5.1
Railsをセットアップする
bundlerをインストールする
gem install bundler
Gemfileを作成する(ここでRailsのバージョンを指定する)
source "https://rubygems.org"
gem "rails" , '~> 5.2.0'
bundlerを使ってRailsをインストールする
bundle install --path vendor/bundle
bundle execでRailsのプロジェクトを作成する
bundle exec rails new . -B -d mysql --skip-turbolinks --skip-test
残りのgemをインストールする
bundle install
もしbundle install時にmysql2でコケたら
下記を実行して、再度bundle installする
bundle config --local build.mysql2 "--with-ldflags=-L/usr/local/opt/openssl/lib --with-cppflags=-I/usr/local/opt/openssl/include"
MacでMySQLを起動する
brew servicesを使ってMySQLを起動する(これは最初にやったほうが効率が良さそう)
brew services list
brew services start mysql
DBを作成する
DBを作成する
bundle exec rake db:create:all
productionのところでコケるかもだが、developmentとtestが作成されていればOK
Railsを起動する
bundle exec rails s
ブラウザで http://localhost:3000 へアクセスする
Yay! You’re on Rails!
と表示されればOK.
Git管理する
.gitignoreを作成して(rails newで作成されていたらそれに追記する)vendor配下は除外する
vim .gitignore
下記を追記する
vendor