Redis
 sql >> база данни >  >> NoSQL >> Redis

Свързване с Redis, работещ в Docker контейнер от хост машина

Проблемът е във вашето обвързване. Трябва да зададете следното:

bind 0.0.0.0

Това ще зададе redis да се обвърже с всички налични интерфейси, в контейнерна среда с един интерфейс, (eth0 ) и обратна линия (lo ) redis ще се свърже и с двете по-горе. Трябва да помислите за добавяне на мерки за сигурност чрез други директиви в config file или като използвате външни инструменти като firewalls . защото с този подход всеки може да се свърже с вашия redis сървър.

Настройката по подразбиране е bind 127.0.0.1 и тази настройка ще причини redis да слушате само на интерфейса за обратна връзка и ще бъде достъпен само от вътрешността на контейнера. (за сигурност)

За да стартирате redis с персонализиран конфигурационен файл:

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

Сега да проверите на хоста на docker с redis-tools инсталирано:

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> 

Можете също да се свържете с вашия redis контейнер от външен хост чрез:

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


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Получавам дублиращи се съобщения в моето клъстерирано приложение node.js/socket.io/redis pub/sub

  2. Фатална грешка:Неуловено изключение „RedisException“ със съобщение „Redis сървърът изчезна“

  3. Redis - Изтекли индекси не се изтриват

  4. Django - Как да използвам асинхронна опашка от задачи с целина и redis

  5. Как да инсталирате Redis