rails6 外部のredisに接続する
rails6で外部のredisに接続するまでの手順を記述してます。redisのバージョンは6.0.10を使用してます。
環境
- OS CentOS Linux release 7.9.2009 (Core)
- Ruby 2.7.2
- Rails 6.1.1
- redis 6.0.10
- rbenv 1.1.2-40-g62d7798
redis-railsインストール
まずは、railsでredisを使用できるように「redis-rails」をインストールします。
「Gemfile」に以下を追加します。
gem "redis-rails"
インストールします。
bundle install
redis利用
「config/initializers」に「redis.rb」を作成します。ここで、IPアドレスを指定すれば外部にあるredisに接続することが可能です。
Redis.current = Redis.new(:host => "ipアドレス", :port => 6379)
これで外部のredisに接続できます。
rails s
確認
「controller」を作成します。
rails g controller redis index
作成した「app/controllers/redis_controller.rb」を以下のように編集します。
class RedisController < ApplicationController
def index
Redis.current.set("samplekey", "mebee")
end
end
「app/views/redis/index.html.erb」も以下のように編集します。
<h1>Redis#index</h1>
<p>Find me in app/views/redis/index.html.erb</p>
<%= Redis.current.get("samplekey") %>
ルーティングも設定しておきます。
get "redis", to: "redis#index"
ブラウザから http://プライベートIP or サーバーアドレス:3000/redis にアクセスするとsamplekeyがredisに作成されることが確認できます。
redis-cli
127.0.0.1:6379> key *
1) "samplekey"
-
前の記事
PostgreSQL 有限の日付であるかを判定する 2021.10.24
-
次の記事
Ruby クラスメソッドでコンストラクタを実行する 2021.10.24
コメントを書く