Redis
 sql >> Database >  >> NoSQL >> Redis

docker:MISCONF Redis è configurato per salvare gli snapshot RDB

TL;DR Il tuo redis non è sicuro

AGGIORNAMENTO: Usa expo al posto di ports quindi il servizio è disponibile solo per i servizi collegati

Esponi le porte senza pubblicarle sul computer host:saranno accessibili solo ai servizi collegati. È possibile specificare solo la porta interna.

expose
 - 6379

RISPOSTA ORIGINALE:

risposta lunga:

Ciò è probabilmente dovuto a un redis-server non protetto esempio. L'immagine redis predefinita in un contenitore mobile non è protetta.

Sono riuscito a connettermi a redis sul mio server web usando solo redis-cli -h <my-server-ip>

Per risolvere il problema, ho letto questo articolo di DigitalOcean e molti altri e sono riuscito a chiudere il porto.

  • Puoi scegliere un redis.conf predefinito da qui
  • Quindi aggiorna il tuo docker-componi redis sezione a(aggiornare i percorsi dei file di conseguenza)
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"

il percorso di redis.conf in command e volumes dovrebbe corrispondere

  • ricostruisci redis o tutti i servizi come richiesto
  • prova a usare redis-cli -h <my-server-ip> per verificare (ha smesso di funzionare per me)