-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdocker-compose.yaml
More file actions
124 lines (116 loc) · 3.55 KB
/
docker-compose.yaml
File metadata and controls
124 lines (116 loc) · 3.55 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
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
version: "3.8"
services:
mongo:
# See https://learn.microsoft.com/en-us/azure/cosmos-db/mongodb/upgrade-version
# to determine the latest compatible MongoDB version to use with Azure Cosmos DB
image: mongo:4.2
container_name: mongodb
ports:
- 27017:27017
volumes:
- ./var/mongo/data-db:/data/db
environment:
- MONGO_INITDB_ROOT_USERNAME=root
- MONGO_INITDB_ROOT_PASSWORD=password
restart: unless-stopped
healthcheck:
# NOTE: will need to switch to mongosh when using MongoDB v6+
test: echo 'db.runCommand("ping").ok' | mongo admin -u $$MONGO_INITDB_ROOT_USERNAME -p $$MONGO_INITDB_ROOT_PASSWORD --quiet | grep 1
interval: 20s
mongo-express:
image: mongo-express:0.54.0
container_name: mongo-express
ports:
- "8881:8081"
environment:
- ME_CONFIG_MONGODB_ADMINUSERNAME=root
- ME_CONFIG_MONGODB_ADMINPASSWORD=password
- ME_CONFIG_MONGODB_SERVER=mongodb
restart: unless-stopped
depends_on:
mongo:
condition: service_healthy
postgres:
# https://github.com/docker-library/docs/tree/master/postgres
image: postgres:16
container_name: postgres
ports:
- 15432:5432
environment:
- POSTGRES_USER=admin
- POSTGRES_PASSWORD=password
volumes:
- ./var/postgres-data/:/var/lib/postgresql/data/
pgadmin:
# See https://www.pgadmin.org/docs/pgadmin4/latest/container_deployment.html
image: dpage/pgadmin4
container_name: pgadmin
ports:
- 15433:80
environment:
- PGADMIN_DEFAULT_EMAIL=me@local.org
- PGADMIN_DEFAULT_PASSWORD=password
depends_on:
- postgres
volumes:
- ./var/pgadmin-data/:/var/lib/pgadmin/
# https://docs.confluent.io/platform/current/installation/docker/config-reference.html#confluent-local-example
kafka:
image: confluentinc/confluent-local:latest
container_name: kafka
environment:
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:29092,PLAINTEXT_HOST://kafka:9092
KAFKA_REST_SCHEMA_REGISTRY_URL: http://localhost:8081
ports:
- 29092:29092
restart: unless-stopped
volumes:
- ./var/kafka:/tmp/kraft-combined-logs
healthcheck:
test: ["CMD-SHELL", "kafka-topics --bootstrap-server 127.0.0.1:9092 --list"]
interval: 20s
# https://docs.redpanda.com/current/reference/console/config/
kafka-console:
image: redpandadata/console:latest
container_name: kafka-console
restart: on-failure
volumes:
- ./config/kafka-console-config.yaml:/etc/kafka-console-config.yaml
ports:
- "8880:8080"
environment:
CONFIG_FILEPATH: /etc/kafka-console-config.yaml
depends_on:
kafka:
condition: service_healthy
# See https://learn.microsoft.com/en-us/azure/azure-cache-for-redis/cache-how-to-upgrade
# to determine the latest compatible Redis version to use with Azure Cache
redis:
image: bitnami/redis:6.2
container_name: redis
environment:
- REDIS_PASSWORD=password
- REDIS_TLS_ENABLED=false
- REDIS_TLS_CERT_FILE=/tls/redis.crt
- REDIS_TLS_KEY_FILE=/tls/redis.key
- REDIS_TLS_CA_FILE=/tls/ca.crt
- REDIS_TLS_PORT=6380
restart: unless-stopped
ports:
- "6379:6379"
- "6380:6380"
volumes:
- ./var/redis:/bitnami/redis/data
- ./tests/tls:/tls
redisinsight:
image: redis/redisinsight:latest
container_name: redisinsight
ports:
- "5540:5540"
volumes:
- ./var/redisinsight:/data
volumes:
data: {}
networks:
default:
name: local-stack-network