Redis
 sql >> Database >  >> NoSQL >> Redis

Errore:connessione Redis a 127.0.0.1:6379 non riuscita - connetti ECONNREFUSED 127.0.0.1:6379

Redis viene eseguito in un contenitore separato che dispone di un adattatore ethernet virtuale separato e di un indirizzo IP per il contenitore in cui è in esecuzione l'applicazione del nodo. Devi collegare i due contenitori o creare una rete definita dall'utente per loro

docker network create redis
docker run -d --net "redis" --name redis redis
docker run -d -p 8100:8100 --net "redis" --name node redis-node

Quindi specifica l'host redis quando si connette nel nodo in modo che il client redis tenti di connettersi a redis container anziché il valore predefinito di localhost

const redis = require('redis')
const client = redis.createClient(6379, 'redis')
client.on('connect', () => console.log('Connected to Redis') )

Docker Compose può aiutare con la definizione di configurazioni multi-container.

version: '2'
services:
  node:
    build: .
    ports:
    - "8100:8100"
    networks:
    - redis
  redis:
    image: redis
    networks:
    - redis
networks:
  redis:
    driver: bridge