Railsには以下の3つの環境がある
- テスト環境(test)
- 開発環境(development)
- 本番環境(production)
RailsのRails
オブジェクトにはenv
属性があり、開発環境において、Rails.env.development
を実行すると、true
が返ってくる。
Rails consoleやRails serverはデフォルトでは開発環境だが、$ rails console test
、$ rails server --environment production
など環境をパラメータとして渡すと、その環境で実行することができる。
また、アプリケーションを本番環境で実行する場合は、rails db:migrate
を本番環境で実行してデータベースを作成する必要があり、$ rails db:migrate RAILS_ENV=production
を実行する。
注意としては、上記のように、console、sever、migrateで環境の指定の仕方が違う。
Herokuは本番サイト用のプラットフォームのため、デフォルトで本番環境で実行される。