Aprende a dominar las redes en Docker con un enfoque práctico y claro. Aquí verás los cinco modelos de red que ofrece Docker, por qué el modelo bridge es el más usado para desarrollo y cómo realizar una prueba de comunicación entre contenedores con NGINX y Alpine usando comandos como docker network create, docker run -d y docker run -it, además de instalar curl dentro de un contenedor.
¿Qué modelos de red en Docker existen y cuándo usarlos?
Comprender los modelos te ayuda a elegir el entorno adecuado para pruebas y despliegues. La mayoría de los casos de uso de desarrollo funcionan con bridge, mientras que los demás se orientan a pruebas específicas o a orquestación.
Bridge o puente: red por defecto de Docker. Los contenedores locales se comunican entre sí por nombre. Ideal para desarrollo y pruebas entre servicios.
Host: el contenedor usa la IP real del host. Simula un equipo real. Más eficiente, con mayor consumo de recursos de red.
Aislado: el contenedor queda sin comunicación externa. Útil para probar fallos y reacciones del sistema ante componentes ausentes.
Overlay: permite que contenedores en máquinas diferentes se comuniquen. Usado por orquestadores como Kubernetes en topologías distribuídas.
Mac VLAN: asigna una dirección MAC real a cada contenedor. La red percibe varios equipos independientes; habilita comportamientos totalmente aislados.
¿Cómo crear una red bridge y conectar contenedores?
El ejercicio se centra en crear una red personalizada y verificar que dos contenedores pueden comunicarse por nombre de servicio dentro de esa red, manteniéndola exclusiva respecto al host.
¿Cómo crear la red personalizada?
Crea la red para agrupar los contenedores con seguridad compartida.
docker network create mi_red_brige
Red identificable por nombre.
Aísla el tráfico entre miembros.
¿Cómo desplegar el servidor NGINX en segundo plano?
Lanza el servidor en detached mode y conéctalo a la red.
docker run -d --network mi_red_brige --name servidor_web nginx
La imagen NGINX se descarga si no existe localmente.
El contenedor queda ejecutándose y visible en Docker Desktop.
¿Cómo probar comunicación desde Alpine con terminal interactiva?
Inicia un cliente ligero con acceso a la red y prueba con curl.