Redis
 sql >> Baza danych >  >> NoSQL >> Redis

Błąd:połączenie Redis z 127.0.0.1:6379 nie powiodło się - połącz ECONNREFUSED 127.0.0.1:6379

Redis działa w osobnym kontenerze, który ma oddzielny wirtualny adapter Ethernet i adres IP do kontenera, w którym działa aplikacja węzła. Musisz połączyć dwa kontenery lub utworzyć dla nich sieć zdefiniowaną przez użytkownika

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

Następnie określ hosta redis podczas łączenia w węźle, więc klient redis próbuje połączyć się z redis kontener zamiast domyślnego localhost

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

Docker Compose może pomóc w zdefiniowaniu konfiguracji wielokontenerowych.

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


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Połączenie Redis z 127.0.0.1:6379 nie powiodło się - połącz ECONNREFUSED

  2. Dlaczego pojedyncza instancja Jedis nie jest bezpieczna wątkowo?

  3. Jedis — kiedy używać metody returnBrokenResource()

  4. Anulować już wykonywane zadanie w Pythonie RQ?

  5. Filtrowanie elementów w Redis