sql >> Databáze >  >> NoSQL >> Redis

docker-compose:připojení mezi kontejnery bylo odmítnuto, ale služba je přístupná z hostitele

Když svážete porty jako tento '9002:6379' říkáte Dockeru, aby přesměroval provoz z localhost:9002 -> redis:6379 . To je důvod, proč to funguje z vašeho hostitelského počítače:

redis-cli -h localhost -p 9002 -n 0

Když však kontejnery spolu mluví, jsou všechny ve výchozím nastavení připojeny ke stejné síti (most Docker nebo docker0 ). Ve výchozím nastavení mohou kontejnery mezi sebou komunikovat volně v této síti, aniž by bylo potřeba otevřít nějaké porty. V rámci této sítě se vaše redis kontejner naslouchá provozu na svém obvyklém portu (6379 ), hostitel není vůbec zapojen. Proto vaše komunikace mezi kontejnery funguje na 6379 .




  1. Pochopení latence pomocí Redis-Cli

  2. 5 způsobů, jak získat minuty z rande v MongoDB

  3. Proč redis nemůže nastavit maximální otevřený soubor

  4. Navrhnout databázovou tabulku Redis jako SQL?