Rails how to switch between dev and production mode?
Start server using -e
option.
rails server -e production
And you can not deploy database. you needs migrations to run in production.
To start your server in development mode you only need to run rails s
it will start your app in dev mode as well as your database.
To start your server in production mode you need to migrate your database with bundle exec rake db:migrate RAILS_ENV=production
and then start your server in production using rails s -e production
or RAILS_ENV=production rails s
If you are using Rails 4.2 then you must know rails uses "spring" to make it faster. So in that case you can use following commands:
For Development just run
Rails 4.2
bin\rails s
Otherwise
rails s
For Production just run
Rails 4.2
bin\rails s -e production
Otherwise
rails s -e production
To setup production database if database in production does not exist then run
Rails 4.2
bin/rake db:create db:migrate RAILS_ENV=production
Otherwise
rake db:create db:migrate RAILS_ENV=production
bundle exec rake db:create db:migrate RAILS_ENV=production
If DB already exists the:
Rails 4.2
bin/rake db:migrate RAILS_ENV=production
Otherwise
rake db:migrate RAILS_ENV=production
OR
bundle exec rake db:migrate RAILS_ENV=production
Also if you want to stop spring or start spring then use following commands:
bin/spring stop
bin/spring start