Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

707
Views
No se puede conectar a redis en docker y django

Ejecuté un contenedor redis usando este comando: docker run -d --name redis -p 6379:6379 redis .

y ejecuté mi aplicación Django usando este comando: docker run -it -p 8000:8000 voucher .

y mi URL de redis de conexión es redis://redis:6379/1 .

Pero parece que no puedo conectarme a redis aquí está mi error: redis.exceptions.ConnectionError: Error -2 connecting to redis:6379. Name or service not known.

PD: no estoy usando docker-compose

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Ambos contenedores deben estar en la misma Docker network para poder comunicarse a través de los nombres de los contenedores.

 docker run -d --name redis --network your-network -p 6379:6379 redis docker run -it --network your-network -p 8000:8000 voucher
over 4 years ago · Santiago Trujillo Report

0

Lo solucioné cambiando la URL de mi conexión redis a redis://172.17.0.2:6379/1. Pero ¿por qué es eso? ¿Cómo puedo usar nombres de contenedores en lugar de direcciones IP?

Esta es su IP de host. Tienes algunas formas de resolver tu problema.

1 - Use la IP codificada como lo hizo.

2 - Use el enlace de la ventana acoplable para conectar aplicaciones como:

 docker run --name my-redis-application --link my-redis-container:redis -d centos

3 - Puede crear un redis.conf con el siguiente contenido:

 bind 0.0.0.0

y usarlo en el inicio como:

 docker run -v $(pwd):/usr/local/etc/redis/ --name redis -p 6379:6379 -d redis redis-server /usr/local/etc/redis/redis.conf

4 - Puede usar docker-compose para vincular mejor, como en el n. ° 2.

over 4 years ago · Santiago Trujillo Report

0

Creo que la mejor opción es docker-compose. si te gusta usar docker-compose aquí está la respuesta.

docker-compose.yml

 version: "3.8" services : redis: image : redis container_name : redis restart : unless-stopped ports: - 6379:6379 voucher: image : voucher ports: - 8000:8000 depends_on: - redis

ahora puede conectarse a Redis usando el nombre de servicio "redis".

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!