Problém je s vaší vazbou, měli byste nastavit následující:
bind 0.0.0.0
Tím nastavíte redis
vázat se na všechna dostupná rozhraní v kontejnerovém prostředí s jedním rozhraním (eth0
) a zpětnou smyčku (lo
) redis se bude vázat na obě výše uvedené. Měli byste zvážit přidání bezpečnostních opatření prostřednictvím jiných direktiv v config file
nebo pomocí externích nástrojů, jako jsou firewalls
. protože s tímto přístupem se každý může připojit k vašemu redis
server.
Výchozí nastavení je bind 127.0.0.1
a toto nastavení způsobí redis
poslouchat pouze na rozhraní zpětné smyčky a bude přístupné pouze zevnitř kontejneru. (pro bezpečnost)
Chcete-li spustit redis s vlastním konfiguračním souborem:
sudo docker run -d --name redis-test -p 6379:6379 -v /path/to/redisconf/redis.conf:/redis.conf redis redis-server /redis.conf
Nyní k ověření na hostiteli dockeru pomocí redis-tools
nainstalováno:
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>
Můžete se také připojit ke svému redis
kontejner z externího hostitele přes:
redis-cli -h 'IP-address-of-dockerhost-running-redis-container'