Redis
 sql >> Base de données >  >> NoSQL >> Redis

docker :MISCONF Redis est configuré pour enregistrer les instantanés RDB

TL;DR Votre redis n'est pas sécurisé

MISE À JOUR : Utilisez expose au lieu de ports le service n'est donc disponible que pour les services liés

Exposez les ports sans les publier sur la machine hôte - ils ne seront accessibles qu'aux services liés. Seul le port interne peut être spécifié.

expose
 - 6379

RÉPONSE ORIGINALE :

réponse longue :

Cela est peut-être dû à un redis-server non sécurisé exemple. L'image redis par défaut dans un conteneur Docker n'est pas sécurisée.

J'ai pu me connecter à redis sur mon serveur Web en utilisant uniquement redis-cli -h <my-server-ip>

Pour résoudre ce problème, j'ai parcouru cet article de DigitalOcean et bien d'autres et j'ai pu fermer le port.

  • Vous pouvez choisir un redis.conf par défaut à partir d'ici
  • Ensuite, mettez à jour votre docker-compose redis section pour (mettre à jour les chemins de fichiers en conséquence)
redis:
    restart: unless-stopped
    image: redis:6.0-alpine
    command: redis-server /usr/local/etc/redis/redis.conf
    env_file:
      - app/.env
    volumes:
      - redis:/data
      - ./app/conf/redis.conf:/usr/local/etc/redis/redis.conf
    ports:
      - "6379:6379"

le chemin vers redis.conf dans command et volumes devrait correspondre

  • reconstruire redis ou tous les services selon les besoins
  • essayez d'utiliser redis-cli -h <my-server-ip> pour vérifier (il a cessé de fonctionner pour moi)