Blog Rubynetti

Redis - configurazione con Docker e Rails

Per poter usare correttamente Rails e Redis insieme a Docker è necessario configurare il docker-compose nel seguente modo:

version: '3'

services:
  web:
    [..]
  db:
    [..]
  redis:
    image: 'redis:4.0-alpine'
    command: redis-server
    ports:
      - 6379:6379
    volumes:
      - 'redis_data:/data'
volumes:
  [..]
  redis_data:

Questa soluzione permette di installare tramite docker-compose una istanza funzionante e operativa di redis.

Bisogna poi comunicare a Rails come raggiungere il nostro server redis poichè Docker non è solito usare il nostro network in modo convenzionale.

Per poterlo fare è necessario usare i nomi che abbiamo dato ai servizi.

Quindi all’interno di config/initializer/redis.rb vanno aggiunte le seguenti istruzioni.

if Rails.env.development?
  REDIS_CLIENT = Redis.new(host: 'redis', port: 6379, db: 1)
else
  REDIS_CLIENT = Redis.new(host: 'localhost', port: 6379, db: 1)
end

Ovviamente questa è una configurazione che non prevede l’utilizzo di redis con docker all’interno della produzione ma solo in ambiente di sviluppo.

Chi siamo?

Rubynetti è una squadra di designer, sviluppatori e programmatori specializzata in applicazioni web. Il nostro focus è portare valore e automazione nei processi umani e aziendali attraverso l'uso delle tecnologie del web.

Operiamo da più di 20 anni nel settore e siamo specializzati su Vue.js, Nuxt, Rails e React.

Lavoriamo per lo più da Venezia centro storico.

Contatti

Se hai bisogno di una mano per portare avanti o creare dal nulla un progetto digitale siamo a disposizione.