在生产中使用Postgres配置Rails

时间:2014-04-17 19:43:48

标签: ruby-on-rails postgresql production-environment

我一直在谷歌上搜索有关如何在PostgreSQL上使用Ruby on Rails的教程。有一些相当不错的信息,但几乎所有指南都集中在如何配置Rails以在开发和测试环境中使用Postgres。他们会警告你不要将这些配置用于生产,但不要提及你应该做什么。

在Postgres方面,我想知道我需要向Postgres用户提供哪些角色,Rails将连接到数据库。另外,我假设我会在Rails中使用环境变量来获取数据库凭据。我应该在我的database.yml中使用ENV['DATABASE_URL']吗?这种模式通常是什么样的?

我在Ubuntu 12.04.2上使用Rails 4.1.0和PostgreSQL 9.1.13。

1 个答案:

答案 0 :(得分:2)

我建议gem figaro管理您的环境变量。

您在哪里托管您的应用?在Heroku中,您只需要像这样设置database.yml:

production:
   adapter: postgresql
   encoding: unicode
   database: yourappname_production
   pool: 5
   username: root
   password: 

你应该将这些宝石添加到你的Gemfile中:

gem 'pg'
gem 'activerecord-postgresql-adapter'

然后你只需部署并为你设置一切。

希望有所帮助