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

Opretter forbindelse til Redis, der kører i Docker Container fra værtsmaskine

Problemet er med din binding. Du skal indstille følgende:

bind 0.0.0.0

Dette vil indstille redis at binde til alle tilgængelige grænseflader i et containeriseret miljø med én grænseflade, (eth0 ) og en loopback (lo ) redis vil binde til begge ovenstående. Du bør overveje at tilføje sikkerhedsforanstaltninger via andre direktiver i config file eller ved at bruge eksterne værktøjer som firewalls . fordi med denne tilgang kan alle oprette forbindelse til din redis server.

Standardindstillingen er bind 127.0.0.1 og denne indstilling vil forårsage redis til kun at lytte på loopback-grænsefladen, og den vil kun være tilgængelig inde fra containeren. (af hensyn til sikkerheden)

Sådan kører du Redis med tilpasset konfigurationsfil:

sudo docker run -d --name redis-test -p 6379:6379  -v /path/to/redisconf/redis.conf:/redis.conf redis redis-server /redis.conf

Nu skal du verificere på docker-vært med redis-tools installeret:

redis-cli                           
127.0.0.1:6379> 
127.0.0.1:6379> set farhad likes:stackoverflow
OK
127.0.0.1:6379> get farhad
"likes:stackoverflow"
127.0.0.1:6379> 

Du kan også oprette forbindelse til din redis container fra en ekstern vært via:

redis-cli -h 'IP-address-of-dockerhost-running-redis-container'


  1. Hvordan konverterer jeg en ejendom i MongoDB fra tekst til datotype?

  2. Hvad er meningen med REDIS i ELK stakken?

  3. Kan ikke oprette forbindelse til Redis fra Docker

  4. Hvordan kan jeg se, hvor mongoDB gemmer data? (det er ikke i standard /data/db!)