-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy pathdocker-compose.yml
131 lines (128 loc) · 3.18 KB
/
docker-compose.yml
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
version: '3.8'
services:
teraslice-master:
build:
context: .
scale: 1
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:5678/"]
interval: 15s
timeout: 10s
retries: 5
ports:
- "5678:5678"
environment:
- TERAFOUNDATION_CONFIG=/app/config/docker-teraslice-master.yml
networks:
- cluster
volumes:
- teraslice-assets:/app/assets
- ./autoload:/app/autoload:delegated
- ./config:/app/config:delegated
teraslice-worker:
build:
context: .
healthcheck:
test: ["CMD", "curl", "-f", "http://teraslice-master:5678/"]
interval: 15s
timeout: 10s
retries: 5
restart: unless-stopped
scale: 1
stop_grace_period: 60s
environment:
- TERAFOUNDATION_CONFIG=/app/config/docker-teraslice-worker.yml
networks:
- cluster
volumes:
- teraslice-assets:/app/assets
- ./autoload:/app/autoload:delegated
- ./config:/app/config:delegated
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.9.3
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9200"]
interval: 15s
timeout: 10s
retries: 3
restart: unless-stopped
ports:
- "9200:9200"
- "9300:9300"
environment:
- "ES_JAVA_OPTS=-Xms1g -Xmx1g"
- "network.host=0.0.0.0"
- "http.port=9200"
- "transport.tcp.port=9300"
- "discovery.type=single-node"
- "xpack.security.enabled=false"
- "xpack.ml.enabled=false"
- "xpack.watcher.enabled=false"
- "bootstrap.memory_lock=true"
volumes:
- elasticsearch-data:/usr/share/elasticsearch/data
networks:
- cluster
ulimits:
memlock:
soft: -1
hard: -1
nofile:
soft: 65536
hard: 65536
cap_add:
- IPC_LOCK
kafka:
image: confluentinc/cp-kafka:7.1.9 # Has kafka 3.2.0
ports:
- "9094:9094"
restart: unless-stopped
depends_on:
- zookeeper
networks:
- cluster
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_LISTENERS: INTERNAL://kafka:9092,OUTSIDE://0.0.0.0:9094
KAFKA_ADVERTISED_LISTENERS: INTERNAL://kafka:9092,OUTSIDE://localhost:9094
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INTERNAL:PLAINTEXT,OUTSIDE:PLAINTEXT
KAFKA_INTER_BROKER_LISTENER_NAME: INTERNAL
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
zookeeper:
image: confluentinc/cp-zookeeper:7.1.9
ports:
- "2181:2181"
restart: unless-stopped
networks:
- cluster
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000
minio:
image: minio/minio:RELEASE.2023-09-30T07-02-29Z
ports:
- "9000:9000"
- "9001:9001"
restart: unless-stopped
networks:
- cluster
volumes:
- minio-data:/data
environment:
MINIO_ROOT_USER: minioadmin
MINIO_ROOT_PASSWORD: minioadmin
command: server --console-address ":9001" /data
volumes:
teraslice-assets:
driver: local
elasticsearch-data:
driver: local
kafka-data:
driver: local
zookeeper-data:
driver: local
minio-data:
driver: local
networks:
cluster: