首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Redis设置为Heroku和Rails 4.0.0

将Redis设置为Heroku和Rails 4.0.0
EN

Stack Overflow用户
提问于 2014-03-17 14:31:05
回答 3查看 4.9K关注 0票数 5

我试图设置Redis去我的Rails 4应用程序。我也想把它部署到Heroku。

到目前为止,这就是我所做的

通过dashboard.heroku站点,我使用了Redis的Nano版本的一键安装来安装我的应用程序的附件。

我将gem 'redis'添加到我的gemfile文件中。

config/environments/development.rb中,我添加了以下一行:

代码语言:javascript
复制
ENV["REDISTOGO_URL"] = 'redis://redistogo:b9fc604b1c86a1f6c232ce1dd16cd989@albacore.redistogo.com:10280/'

然后,我创建了一个config/initializers/redis.rb文件,如下所示:

代码语言:javascript
复制
uri = URI.parse(ENV["redis://redistogo:b9fc604b1c86a1f6d872ce1dd16cd989@albacore.redistogo.com:10280/"] || "redis://localhost:6379/")
REDIS = Redis.new(:host => uri.host, :port => uri.port, :password => uri.password)

现在在我的控制台中运行Redis命令时,我会得到以下错误:

Redis::CannotConnectError: Error connecting to Redis on 127.0.0.1:6379 (ECONNREFUSED)

我在这里做错了什么,我需要做些什么来确保我可以在开发中测试并部署到Heroku而没有任何问题?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-03-17 15:09:15

环境“REDISTOGO_URL”应该在Heroku的环境中。我会将它从配置/环境/Development.rb中全部删除,并将redis.rb初始化程序更改为:

代码语言:javascript
复制
uri = URI.parse(ENV.fetch("REDISTOGO_URL", "redis://localhost:6379/"))
REDIS = Redis.new(:host => uri.host, :port => uri.port, :password => uri.password)

只要ENV没有在开发中设置,它就会返回到本地redis安装。

票数 6
EN

Stack Overflow用户

发布于 2015-01-03 18:44:23

要更新Rails 4的brandonhilkert's answer

代码语言:javascript
复制
uri = ENV["REDISTOGO_URL"] || "redis://localhost:6379/"
REDIS = Redis.new(:url => uri)

另外,您可能希望使用Redis.current而不是设置REDIS变量(see here)。

票数 2
EN

Stack Overflow用户

发布于 2015-07-03 21:47:14

对于Rails 4,我执行了以下操作

在控制台中:

代码语言:javascript
复制
heroku addons:create redistogo
heroku config:set REDIS_PROVIDER=REDISTOGO_URL

在我的Procfile中,我添加了:

代码语言:javascript
复制
worker: bundle exec sidekiq

在我的“gemfile.rb”中,我补充道:

代码语言:javascript
复制
gem 'redis'

我添加了以下文件,config/initializers/redis.rb

代码语言:javascript
复制
uri = ENV["REDISTOGO_URL"] || "redis://localhost:6379/"
REDIS = Redis.new(:url => uri)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22457068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档