-
Notifications
You must be signed in to change notification settings - Fork 259
/
Copy pathdocker-compose.yaml
136 lines (123 loc) · 3.07 KB
/
docker-compose.yaml
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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
version: '3'
services:
rabbitmq:
image: brightercommand/rabbitmq:3.13-management-delay
ports:
- "5672:5672"
- "15672:15672"
volumes:
- rabbitmq-home:/var/lib/rabbitmq
# Need to give 2GB of memory to Docker for SQL
sqlserver:
image: mcr.microsoft.com/mssql/server
ports:
- "1433:1433"
volumes:
- sqlserver-data:/var/opt/mssql
environment:
- ACCEPT_EULA=Y
- SA_PASSWORD=Password123!
mysql:
image: mysql
ports:
- "3306:3306"
volumes:
- mysql-data:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: "root"
redis:
image: redis
ports:
- "6379:6379"
postgres:
image: postgres
volumes:
- postgres-data:/var/lib/postgresql
- postgres-data:/etc/postgresql
- postgres-data:/var/log/postgresql
ports:
- "5432:5432"
environment:
POSTGRES_PASSWORD: password
dynamo:
image: dwmkerr/dynamodb
command: "-inMemory"
hostname: dynamo
volumes:
- dynamodb:/data
ports:
- "8000:8000"
zookeeper:
image: confluentinc/cp-zookeeper:latest
hostname: zookeeper
container_name: zookeeper
networks:
- kafka
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000
volumes:
- ./zoo/data:/var/lib/zookeeper/data
- ./zoo/log:/var/lib/zookeeper/log
kafka:
image: confluentinc/cp-enterprise-kafka:latest
hostname: kafka
container_name: kafka
networks:
- kafka
depends_on:
- zookeeper
ports:
- "9092:9092"
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_DELETE_TOPIC_ENABLE: "true"
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0
volumes:
- ./broker/data:/var/lib/kafka/data
otel-collector:
image: otel/opentelemetry-collector-contrib
volumes:
- ./otel-collector-config.yaml:/etc/otelcol-contrib/config.yaml
ports:
- 1888:1888 # pprof extension
- 8888:8888 # Prometheus metrics exposed by the Collector
- 8889:8889 # Prometheus exporter metrics
- 13133:13133 # health_check extension
- 4317:4317 # OTLP gRPC receiver
- 4318:4318 # OTLP http receiver
- 55679:55679 # zpages extension
jaeger:
image: jaegertracing/all-in-one:latest
ports:
- "6831:6831/udp" # UDP port for Jaeger agent
- "16686:16686" # Web UI
- "14250:14250" # gRPC port for Jaeger agent
- "14268:14268" # HTTP port for spans
prometheus:
image: prom/prometheus:latest
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
ports:
- "9090:9090"
extra_hosts:
- "host.docker.internal:host-gateway"
networks:
kafka:
driver: bridge
volumes:
eventstore-data:
eventstore-logs:
rabbitmq-home:
driver: local
mysql-data:
driver: local
sqlserver-data:
driver: local
postgres-data:
driver: local
dynamodb:
driver: local