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

Fejl 99 ved forbindelse til localhost:6379. Kan ikke tildele den ønskede adresse

I flask-appen har jeg en funktion, der forsøger at oprette en redis-klient

db = redis.Redis(host='localhost', port=6379, decode_responses=True)

Når din kolbeproces kører i en beholder, localhost refererer til selve containerens netværksgrænseflade. Det løser ikke til netværksgrænsefladen på din docker-vært.

Så du skal erstatte localhost med IP-adressen på containeren, der kører redis.

I sammenhæng med en docker-compose.yml-fil er dette nemt, da docker-compose vil få tjenestenavne til at blive opløst til den korrekte container-IP-adresse:

version: "3"
services:
  my_flask_service:
    image: ...
  my_redis_service:
    image: ...

derefter i din kolbe-app skal du bruge:

db = redis.Redis(host='my_redis_service', port=6379, decode_responses=True)


  1. Sådan optimeres ydeevnen af ​​ClusterControl og dens komponenter

  2. Sådan får du dagen, måneden og året fra en dato i SQL

  3. Fjern dubletter fra MongoDB

  4. Node.js + MongoDB:indsæt en og returner det nyligt indsatte dokument