sql >> Databasteknik >  >> NoSQL >> Redis

Ansluter till Redis som körs i Docker Container från värddator

Problemet är med din bindning. Du bör ställa in följande:

bind 0.0.0.0

Detta kommer att ställa in redis att binda till alla tillgängliga gränssnitt, i en containermiljö med ett gränssnitt, (eth0 ) och en loopback (lo ) redis kommer att binda till båda ovanstående. Du bör överväga att lägga till säkerhetsåtgärder via andra direktiv i config file eller använda externa verktyg som firewalls . eftersom med detta tillvägagångssätt kan alla ansluta till din redis server.

Standardinställningen är bind 127.0.0.1 och den här inställningen kommer att orsaka redis att bara lyssna på loopback-gränssnittet, och det kommer endast att vara tillgängligt från insidan av behållaren. (för säkerhets skull)

Så här kör du redis med anpassad 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 ska du verifiera på docker-värden med redis-tools installerat:

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 också ansluta till din redis behållare från en extern värd via:

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


  1. Hur man ställer in en Docker redis-behållare med ssl

  2. Hur man söker efter innehållsvärde i redis av BookSleeve

  3. Spring Data MongoDB – Index, anteckningar och omvandlare

  4. mongoexport samlad export till en csv-fil