🐳DOCKER: #4 Docker-Compose 🦑
- Brayan Neciosup
- 23 dic 2025
- 2 Min. de lectura
Actualizado: 23 dic 2025
Docker Compose es una herramienta que permite definir y ejecutar aplicaciones multicontenedor de forma declarativa. En lugar de ejecutar múltiples comandos docker run, Docker Compose permite describir todo el stack en un solo archivo YAML y levantarlo con un único comando.
💻Ejemplo repositorio GitHub: Docker-Compose
Ejemplos típicos de stacks:
Backend + Base de datos
API + Redis + Worker
Frontend + Backend + DB
📄 El archivo docker-compose.yml
El corazón de Docker Compose es el archivo: docker-compose.yml
En este archivo se define:
Qué contenedores se ejecutan
Cómo se construyen o de dónde se descargan
Qué puertos exponen
Qué volúmenes usan
Qué variables de entorno necesitan
Cómo se relacionan entre sí
Todo queda documentado y versionado.
⚙️ Estructura general del archivo
🧩 Versión del esquema
La versión define el formato y las características compatibles con Docker Compose.En la mayoría de casos, se recomienda usar la versión más reciente soportada.
🧱 Servicios
Cada servicio representa un contenedor dentro de la aplicación.
Docker Compose permite dos enfoques principales:
Construir imágenes propias a partir de un Dockerfile
Usar imágenes existentes desde Docker Hub
Ambos enfoques pueden convivir en el mismo archivo, algo muy común en proyectos reales.
▶️ Ejecución de Docker Compose
Docker Compose simplifica la gestión del ciclo de vida de los contenedores:
Levantar todo el stack
Reconstruir imágenes cuando cambian
Ver logs centralizados
Detener y eliminar recursos
Esto elimina la necesidad de ejecutar múltiples comandos manuales y reduce errores de configuración.
🧠 Conceptos clave a entender
build: se usa cuando necesitas crear una imagen propia
image: se usa cuando reutilizas imágenes oficiales
depends_on: define el orden de arranque entre servicios
environment: permite configurar servicios sin hardcodear valores
volumes: aseguran persistencia de datos
Docker Compose no garantiza solo que los contenedores arranquen, sino que arranquen juntos y de forma coherente.
🧩 Arquitectura típica con Docker Compose
Docker Compose crea automáticamente:
Una red interna compartida
Volúmenes reutilizables
Comunicación directa entre servicios por nombre
Esto permite que los contenedores se comuniquen sin exponer servicios innecesarios al exterior.
✅ Buenas prácticas
Usar nombres claros para los servicios (api, db, redis, etc.)
Separar variables sensibles en archivos .env
Exponer solo los puertos necesarios
Tener cuidado al eliminar volúmenes
Documentar el archivo con comentarios claros
🔍 Conclusión
Docker Compose marca el paso de:👉 contenedores aislados a👉 arquitecturas completas y reproducibles
Es una herramienta clave antes de avanzar a:
Entornos productivos
Orquestadores
Cloud
Dominar Docker Compose es entender cómo se despliegan aplicaciones reales hoy en día.





Comentarios