70 lines
2 KiB
YAML
70 lines
2 KiB
YAML
# cloud-emulators.yml — self-hosted cloud dev stack
|
|
#
|
|
# Deployed on lattepanda (192.168.0.40), docker compose:
|
|
# docker compose -f /opt/cloud-emulators/cloud-emulators.yml up -d
|
|
#
|
|
# Services:
|
|
# MinIO S3-compatible object store API :9000 Console :9001
|
|
# LocalStack AWS emulator (IAM/SQS/S3/…) edge :4566
|
|
# Azurite Azure Storage emulator blob :10000 queue :10001 table :10002
|
|
#
|
|
# Credentials live in Vaultwarden (self-hosted first policy).
|
|
# See docs/guides/selfhosted/cloud-emulators.md for CLI wiring.
|
|
|
|
name: cloud-emulators
|
|
|
|
services:
|
|
minio:
|
|
image: minio/minio:latest
|
|
container_name: minio
|
|
restart: unless-stopped
|
|
command: server /data --console-address ":9001"
|
|
ports:
|
|
- "9000:9000"
|
|
- "9001:9001"
|
|
environment:
|
|
MINIO_ROOT_USER: ${MINIO_ROOT_USER:-minioadmin}
|
|
MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD:?set MINIO_ROOT_PASSWORD in .env}
|
|
volumes:
|
|
- minio-data:/data
|
|
healthcheck:
|
|
test: ["CMD", "mc", "ready", "local"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
|
|
localstack:
|
|
image: localstack/localstack:3 # v3 community (latest/2026+ demands LOCALSTACK_AUTH_TOKEN)
|
|
container_name: localstack
|
|
restart: unless-stopped
|
|
ports:
|
|
- "4566:4566"
|
|
environment:
|
|
SERVICES: s3,sqs,sns,iam,lambda,logs,cloudwatch,ssm,secretsmanager,dynamodb,iot
|
|
DEFAULT_REGION: eu-west-1
|
|
PERSISTENCE: "1"
|
|
volumes:
|
|
- localstack-data:/var/lib/localstack
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
healthcheck:
|
|
test: ["CMD", "curl", "-sf", "http://localhost:4566/_localstack/health"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
|
|
azurite:
|
|
image: mcr.microsoft.com/azure-storage/azurite:latest
|
|
container_name: azurite
|
|
restart: unless-stopped
|
|
command: azurite --blobHost 0.0.0.0 --queueHost 0.0.0.0 --tableHost 0.0.0.0 --location /data
|
|
ports:
|
|
- "10000:10000"
|
|
- "10001:10001"
|
|
- "10002:10002"
|
|
volumes:
|
|
- azurite-data:/data
|
|
|
|
volumes:
|
|
minio-data:
|
|
localstack-data:
|
|
azurite-data:
|