Skip to content
BotServBotServ
DockerRedesBridgeOverlayHostContainer

Redes Docker

Comprende las redes en Docker. Bridge, Host, Overlay y redes personalizadas para servicios de IA.

S

schutzgeist

3 min read
Redes Docker

Redes en Docker

Qué cubre este artículo sobre redes Docker

  • Qué tipos de redes ofrece Docker.
  • Cómo se comunican los contenedores entre sí.
  • Configurar redes personalizadas.
  • Diferencias entre Bridge, Host y Overlay.
  • Consejos para pilas locales de IA.

Introducción: Redes Docker

Docker aísla los contenedores entre sí de manera predeterminada. Para aplicaciones multicontenedor como Ollama, Open WebUI y bases de datos, necesitas una red compartida. Docker proporciona varios controladores de red que permiten a los contenedores comunicarse, publicar puertos y habilitar acceso externo. Entender las redes Docker te ayuda a evitar problemas de conectividad típicos y construir configuraciones más estables.

Este artículo explica los tipos de red Docker más importantes y su uso en proyectos locales de IA.

Términos clave

  • Bridge: La red estándar en Docker.
  • Host: El contenedor comparte el stack de red del host.
  • Overlay: Red para Docker Swarm y clústeres.
  • None: Sin conexión de red.
  • DNS: Resolución de nombres dentro de la red de contenedores.
  • Alias: Un nombre adicional para un contenedor en la red.
  • Port-Mapping: Redirección de un puerto del host a un puerto del contenedor.

Tipos de red estándar

Bridge

Cada contenedor que no especifica una red termina en la Bridge predeterminada. Desde ahí puede alcanzar otros contenedores por dirección IP, pero no por nombre. Las redes Bridge personalizadas ofrecen resolución DNS de nombres.

Host

El contenedor usa el stack de red del host. Sin aislamiento, pero máximo rendimiento. No disponible en Windows y macOS.

None

Sin conexión de red. Solo para aplicaciones especiales.

Overlay

Para Docker Swarm y clústeres. Permite la comunicación entre contenedores en diferentes hosts.

Redes Bridge personalizadas

docker network create ki-net

Conectar un contenedor a la red:

docker run -d --name ollama --network ki-net ollama/ollama
docker run -d --name open-webui --network ki-net -e OLLAMA_BASE_URL=http://ollama:11434 ghcr.io/open-webui/open-webui:main

Ahora el contenedor open-webui puede acceder a Ollama usando el nombre ollama.

En Docker Compose

services:
  ollama:
    image: ollama/ollama
    networks:
      - ki-net

  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    networks:
      - ki-net
    environment:
      - OLLAMA_BASE_URL=http://ollama:11434

networks:
  ki-net:

Publicar puertos

docker run -d -p 127.0.0.1:8080:8080 open-webui

Solo el puerto 8080 del host es accesible. El contenedor permanece oculto detrás de la dirección de vinculación.

DNS en la red

Las Bridge personalizadas incluyen DNS integrado. Los contenedores pueden comunicarse entre sí por nombre. Esto es especialmente útil en pilas Compose.

Red del host

docker run -d --network host ollama/ollama

No es necesario port-mapping; el contenedor escucha directamente en las interfaces del host. Menos seguro, pero a veces necesario.

Aislar la red

Los contenedores que no deben comunicarse entre sí pueden colocarse en redes separadas:

networks:
  front:
  back:

Solo los servicios deseados obtienen acceso a ambas redes.

Diagnosticar problemas de conectividad

docker network ls
docker network inspect ki-net
docker exec -it open-webui ping ollama

Si ping falla, verifica que ambos contenedores estén en la misma red.

Problemas comunes

  • Bridge predeterminada sin DNS: El nombre del contenedor no se puede resolver.
  • Puerto incorrecto: Confundir el puerto del host con el puerto del contenedor.
  • IP de vinculación incorrecta: Usar 0.0.0.0 en lugar de 127.0.0.1.
  • Contenedor en la red incorrecta: Solo es alcanzable por IP, no por nombre.
  • Firewall del host bloquea el acceso: Impide el acceso externo.
  • Red del host en macOS/Windows: No disponible.

Enlaces y referencias

FAQ: Redes Docker

¿Cómo accedo a un contenedor usando su nombre? En la misma red Bridge personalizada, a través de la resolución DNS de nombres.

¿Cuál es la diferencia entre Bridge y Host? Bridge aísla, Host comparte el stack de red.

¿Necesito Overlay? Solo para Docker Swarm o clústeres en múltiples hosts.

¿Cómo publico puertos de forma segura? Lo mejor es vincularse solo a 127.0.0.1.

¿Por qué el contenedor A no puede alcanzar el contenedor B? Probablemente estén en redes diferentes.

Fuentes y lecturas adicionales

Conclusión: Redes Docker

Las redes Docker son esenciales para configuraciones multicontenedor. Las redes Bridge personalizadas ofrecen resolución DNS de nombres e aíslan servicios de forma efectiva. Los port-mappings deben vincularse solo a 127.0.0.1; la red del host es un caso especial. Quien utiliza docker network create, docker network inspect y pruebas básicas de conectividad encuentra rápidamente los problemas de red. Para pilas de IA con Ollama, Open WebUI y bases de datos, las redes bien configuradas son la base para un funcionamiento estable.

Volver al blog
Share:

Entradas relacionadas