【问题标题】:Setting up Redis To Go with Heroku and Rails 4.0.0使用 Heroku 和 Rails 4.0.0 设置 Redis
【发布时间】:2015-08-19 14:41:33
【问题描述】:

我正在尝试在我的 Rails 4 应用程序上设置 Redis To Go。我也希望能够将它部署到 Heroku。

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

通过dashboard.heroku 站点,我使用一键安装 Redis To Go 的 Nano 版本将插件安装到我的应用程序中。

我将gem 'redis' 添加到我的gemfile。

config/environments/development.rb我添加了这一行:

ENV["REDISTOGO_URL"] = 'redis://redistogo:b9fc604b1c86a1f6c232ce1dd16cd989@albacore.redistogo.com:10280/'

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

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 没有任何问题?

【问题讨论】:

    标签: ruby-on-rails heroku redistogo


    【解决方案1】:

    ENV["REDISTOGO_URL"] 应该在 Heroku 的环境中。我会将它从 config/environments/development.rb 中完全删除,并将 redis.rb 初始化程序更改为:

    uri = URI.parse(ENV.fetch("REDISTOGO_URL", "redis://localhost:6379/"))
    REDIS = Redis.new(:host => uri.host, :port => uri.port, :password => uri.password)
    

    只要未在开发中设置 ENV var,它就会回退到本地 redis 安装。

    【讨论】:

      【解决方案2】:

      为 Rails 4 更新 brandonhilkert's answer

      uri = ENV["REDISTOGO_URL"] || "redis://localhost:6379/"
      REDIS = Redis.new(:url => uri)
      

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

      【讨论】:

        【解决方案3】:

        对于 Rails 4,我做了以下操作

        在控制台中:

        heroku addons:create redistogo
        heroku config:set REDIS_PROVIDER=REDISTOGO_URL
        

        在我的Procfile 中我添加了:

        worker: bundle exec sidekiq
        

        在我的“gemfile.rb”中我添加了:

        gem 'redis'
        

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

        uri = ENV["REDISTOGO_URL"] || "redis://localhost:6379/"
        REDIS = Redis.new(:url => uri)
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2013-07-06
          • 2020-09-13
          • 2013-05-30
          • 2014-10-16
          • 2015-04-23
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多