sql >> Database >  >> NoSQL >> Redis

Toegang tot redis lokaal op docker - docker compose

Het gebruik van localhost in docker-container is ongeldig omdat localhost voor container zijn eigen container betekent, dus als u redis-cli uitvoert vanuit de webcontainer, probeert redis-cli redis in webcontainer te vinden in plaats van redis-container.

U moet de naam van de redis-service specificeren - docker (het netwerk van docker-compose om specifieker te zijn) zal voor uw servicenaam de container-IP van redis omzetten, dus u moet het volgende gebruiken:

redis-cli -h redis ping

verwachte output is:

PONG

Bewerken:

Dat antwoord werkt alleen als beide services dezelfde netwerkmodus gebruiken, dus er zijn 2 manieren:

  1. Voeg network_mode:host toe aan webservice en dan is "localhost" voor redis in orde
  2. Verwijder network_mode:host van redis en dan is het "redis"-domein in orde



  1. Query's met mangoest en dadels

  2. Het beste patroon voor het afhandelen van asynchrone looping in Node.js

  3. Redis actief-actieve replicatie

  4. MongoDB $dateFromString Formaatspecificaties