-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
77 lines (71 loc) · 3.14 KB
/
docker-compose.yml
File metadata and controls
77 lines (71 loc) · 3.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
services:
# [LocalStack](https://localstack.cloud/) es una plataforma de pruebas para servicios de AWS
localstack:
container_name: localstack
image: localstack/localstack:latest
ports:
- "4566:4566" # endpoint único para todos los servicios
- "4510-4559:4510-4559" # puertos para servicios individuales
- "4571:4571" # Optional: edge port for Lambda
environment:
- SERVICES=s3,sqs,sns,lambda,dynamodb,cloudwatch,cloudwatchlogs,apigateway,iam,sts,secretsmanager,events,logs,ec2,route53,ssm,ecr,ecs,ses,kinesis,cloudformation,cognito-idp
- DEBUG=1 # habilita el modo de depuración
- PERSISTENCE=1 # almacenamiento persistente
- LOCALSTACK_API_KEY=${LOCALSTACK_API_KEY} # requerido para Pro
- AWS_DEFAULT_REGION=us-east-1 # región por defecto
- AWS_ACCESS_KEY_ID=test # 👈 credenciales de prueba
- AWS_SECRET_ACCESS_KEY=test, # 👈 credenciales de prueba
- DISABLE_CORS_CHECKS=1 # 👈 HABILITA CORS para llamadas directas
volumes:
- "./data/.localstack-data:/var/lib/localstack" # almacenamiento persistente recomendado
- "/var/run/docker.sock:/var/run/docker.sock" # necesario para Lambda y otros
# [DynamoDB Admin]() es una interfaz web para administrar DynamoDB
# permite ver y editar tablas, ítems, etc.
# puedes acceder a ella en http://localhost:8001
dynamodb-admin:
image: aaronshaf/dynamodb-admin
container_name: dynamodb-admin
ports:
- "8001:8001"
environment:
- DYNAMO_ENDPOINT=http://host.docker.internal:4566
depends_on:
- localstack
# [MinIO](https://min.io/) es un servidor de almacenamiento compatible con S3
# permite almacenar y recuperar objetos de forma similar a S3
# puedes acceder a la consola web en http://localhost:9001
minio:
image: minio/minio
container_name: minio
ports:
- "9000:9000" # API S3 compatible
- "9001:9001" # consola web
environment:
MINIO_ROOT_USER: admin # 👈 credenciales de administrador
MINIO_ROOT_PASSWORD: admin123 # 👈 contraseña de administrador
command: server /data --console-address ":9001" # comando para iniciar el servidor
volumes:
- "./data/.minio-data:/data"
depends_on:
- localstack
# [Grafana](https://grafana.com/) es una plataforma de visualización de datos
grafana:
image: grafana/grafana:latest
container_name: grafana
ports:
- "3000:3000" # puerto para la interfaz web
environment:
- GF_SECURITY_ADMIN_USER=admin # 👈 usuario administrador
- GF_SECURITY_ADMIN_PASSWORD=admin # 👈 contraseña administrador
volumes:
- "./data/.grafana-storage:/var/lib/grafana"
# [Prometheus](https://prometheus.io/) es un sistema de monitoreo y alerta
prometheus:
image: prom/prometheus:latest
container_name: prometheus
ports:
- "9090:9090" # puerto para la interfaz web
volumes:
- "./data/prometheus.yml:/etc/prometheus/prometheus.yml"
volumes:
grafana-storage: