Brian
Brian

Reputation: 6071

How to deploy Rails in production mode?

How do I put a Rails 3.0 in production mode?

Do I simply just put the following code in config/environment:

RAILS_ENV = 'production'

Is there anything else I need to change?

Thank you.

Upvotes: 41

Views: 47292

Answers (2)

user917158
user917158

Reputation: 443

This is the answer:

$ RAILS_ENV=production rake db:migrate

Upvotes: 12

Dylan Markow
Dylan Markow

Reputation: 124419

It depends on how you're running your app. If you're just using the rails server command, you can do:

rails server -e production

You can also just use RAILS_ENV as you mentioned (but do this in a single line):

RAILS_ENV=production rails server

If you're more specific about your exact production setup (i.e. are you using Passenger, or Mongrel, or Unicorn, or something else?), we could give you a more specific answer for your situation.

While Passenger defaults to run your app in production mode unless you tell it otherwise, you can make double sure. For Passenger behind Apache, you would add this to your Apache configuration:

RailsEnv production

For Passenger behind Nginx, you would add this to your Nginx configuration:

rails_env production;

Upvotes: 72

Related Questions