Archivo docker-compose.yml
El archivo docker-compose.yml
orquesta todos los servicios del sistema, incluyendo los microservicios, el API Gateway y la base de datos MySQL. Define la red, puertos, volúmenes, dependencias y variables de entorno necesarias para que cada contenedor funcione correctamente.
📄 Estructura general del archivo
version: '3.8'
services:
mysql:
image: mysql:8.0
container_name: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: soporte
ports:
- "3306:3306"
volumes:
- mysql_data:/var/lib/mysql
tecnico-ticket:
build: ./tecnico-ticket
container_name: tecnico-ticket
depends_on:
- mysql
ports:
- "8083:8083"
cursos:
build: ./cursos
container_name: cursos
depends_on:
- mysql
ports:
- "8082:8082"
pago-cupon:
build: ./pago-cupon
container_name: pago-cupon
depends_on:
- mysql
ports:
- "8081:8081"
gateway:
build: ./gateway
container_name: gateway
depends_on:
- tecnico-ticket
- cursos
- pago-cupon
ports:
- "8080:8080"
volumes:
mysql_data:
🔍 Explicación por secciones
services
: define cada contenedor que será levantado.mysql
: base de datos compartida o replicada, con persistencia en volumen.tecnico-ticket
,cursos
,pago-cupon
: microservicios, cada uno se construye desde su propioDockerfile
.gateway
: el API Gateway que centraliza el acceso a los servicios.depends_on
: asegura que un servicio espere a que otro esté disponible antes de iniciar.volumes
: persistencia de datos para MySQL.
Last updated