Junior
¿Qué es Docker Compose?
sobes.tech AI
Respuesta de la IA
Herramienta para definir y ejecutar aplicaciones Docker multicontenedor. Permite describir servicios, redes y volúmenes en un solo archivo YAML y ejecutarlos con un solo comando.
Funciones principales:
- Definición de múltiples servicios en un solo archivo.
- Creación y ejecución de todos los servicios con un solo comando.
- Gestión del ciclo de vida de la aplicación (inicio, parada, reinicio, escalado).
- Interacción de red entre contenedores.
- Aplicación de configuración en tiempo real.
Ejemplo de archivo docker-compose.yml:
version: '3.8' # Versión del formato de archivo
services:
web: # Nombre del servicio
image: nginx:latest # Imagen utilizada
ports:
- "80:80" # Redireccionamiento de puertos
volumes:
- ./html:/usr/share/nginx/html # Mapeo de volúmenes
app: # Nombre de otro servicio
build: . # Construcción de la imagen desde Dockerfile en el directorio actual
ports:
- "5000:5000"
depends_on: # Dependencia de otro servicio
- db
db: # Nombre del servicio de base de datos
image: postgres:latest
environment: # Variables de entorno
POSTGRES_DB: mydatabase
POSTGRES_USER: myuser
POSTGRES_PASSWORD: mypassword
volumes: # Volúmenes definidos
data: # Volumen nombrado para datos
Comandos:
docker-compose up: Inicia los contenedores.docker-compose down: Detiene y elimina los contenedores.docker-compose build: Construye las imágenes.docker-compose ps: Muestra el estado de los contenedores en ejecución.
Ventajas:
- Simplifica la gestión de aplicaciones multicontenedor complejas.
- Garantiza la reproducibilidad del despliegue.
- Facilita el desarrollo y prueba local.