62 lines
1.9 KiB
YAML
62 lines
1.9 KiB
YAML
name: im-admin-local
|
|
services:
|
|
mysql:
|
|
image: mysql:8.0
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:?Run Initialize-Local.ps1 first}
|
|
MYSQL_DATABASE: im_local
|
|
MYSQL_USER: im_local
|
|
MYSQL_PASSWORD: ${MYSQL_PASSWORD:?Run Initialize-Local.ps1 first}
|
|
ports: ["127.0.0.1:13306:3306"]
|
|
volumes: ["mysql:/var/lib/mysql"]
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "MYSQL_PWD=$$MYSQL_PASSWORD mysql -u im_local -e 'SELECT 1' im_local"]
|
|
interval: 3s
|
|
timeout: 3s
|
|
retries: 40
|
|
redis:
|
|
image: redis:7-alpine
|
|
ports: ["127.0.0.1:16379:6379"]
|
|
command: redis-server --appendonly yes
|
|
volumes: ["redis:/data"]
|
|
healthcheck:
|
|
test: ["CMD", "redis-cli", "ping"]
|
|
interval: 3s
|
|
timeout: 3s
|
|
retries: 20
|
|
rabbitmq:
|
|
image: rabbitmq:3-management
|
|
environment:
|
|
RABBITMQ_DEFAULT_USER: im_local
|
|
RABBITMQ_DEFAULT_PASS: ${RABBITMQ_PASSWORD:?Run Initialize-Local.ps1 first}
|
|
ports: ["127.0.0.1:15672:5672", "127.0.0.1:15674:15672"]
|
|
healthcheck:
|
|
test: ["CMD", "rabbitmq-diagnostics", "-q", "ping"]
|
|
interval: 5s
|
|
timeout: 5s
|
|
retries: 30
|
|
consul:
|
|
image: hashicorp/consul:1.20
|
|
command: agent -dev -client=0.0.0.0
|
|
ports: ["127.0.0.1:18500:8500"]
|
|
minio:
|
|
image: minio/minio:RELEASE.2025-04-22T22-12-26Z
|
|
command: server /data --console-address :9001
|
|
environment:
|
|
MINIO_ROOT_USER: im_local
|
|
MINIO_ROOT_PASSWORD: ${S3_PASSWORD:?Run Initialize-Local.ps1 first}
|
|
ports: ["127.0.0.1:19000:9000", "127.0.0.1:19001:9001"]
|
|
volumes: ["minio:/data"]
|
|
smtp:
|
|
image: axllent/mailpit:v1.27
|
|
environment:
|
|
MP_SMTP_TLS_CERT: /certs/smtp.crt
|
|
MP_SMTP_TLS_KEY: /certs/smtp.key
|
|
MP_SMTP_REQUIRE_STARTTLS: "true"
|
|
ports: ["127.0.0.1:11025:1025", "127.0.0.1:18025:8025"]
|
|
volumes: ["./data/certs:/certs:ro"]
|
|
volumes:
|
|
mysql:
|
|
redis:
|
|
minio:
|