Flujo de Trabajo de Docker Compose
Entendiendo Docker Compose
Docker Compose es una herramienta para definir y ejecutar aplicaciones Docker multicontenedor. Utiliza archivos YAML para configurar los servicios de la aplicación, las redes y los volúmenes, lo que permite arquitecturas de aplicaciones complejas con una configuración simple.
graph TD
A[YAML de Docker Compose] --> B[Configuración del Servicio]
B --> C[Orquestación de Contenedores]
B --> D[Configuración de la Red]
B --> E[Gestión de Volúmenes]
Instalación en Ubuntu 22.04
## Instalar Docker Compose
sudo apt update
sudo apt install docker-compose-plugin
## Verificar la instalación
docker compose version
Archivo de Configuración de Docker Compose
Una estructura típica de docker-compose.yml incluye servicios, redes y volúmenes:
version: "3.8"
services:
web:
image: nginx:latest
ports:
- "8080:80"
database:
image: postgres:13
environment:
POSTGRES_PASSWORD: mysecretpassword
volumes:
- postgres-data:/var/lib/postgresql/data
volumes:
postgres-data:
Comandos Clave de Docker Compose
| Comando |
Descripción |
| docker compose up |
Crear e iniciar contenedores |
| docker compose down |
Detener y eliminar contenedores |
| docker compose ps |
Listar contenedores |
| docker compose logs |
Ver registros de contenedores |
| docker compose build |
Construir o reconstruir servicios |
Ejemplo de Aplicación Multicontenedor
version: "3.8"
services:
frontend:
build: ./frontend
ports:
- "3000:3000"
backend:
build: ./backend
ports:
- "5000:5000"
depends_on:
- database
database:
image: mongo:latest
volumes:
- mongodb_data:/data/db
volumes:
mongodb_data:
Técnicas de Configuración Avanzadas
services:
web:
restart: always
environment:
- DEBUG=True
networks:
- app_network
deploy:
replicas: 3
update_config:
parallelism: 1
networks:
app_network:
driver: bridge