-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathdocker-compose.yaml
140 lines (130 loc) · 2.87 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
137
138
139
140
version: '2.3'
services:
conductor-server:
environment:
- CONFIG_PROP=config-local.properties
- ES_VERSION=7
- INDEXING_ENABLED=true
- JAVA_OPTS=-Dpolyglot.engine.WarnInterpreterOnly=false
image: niemen/conductor-server:7.2.2
networks:
- internal
ports:
- 8080:8080
- 8090:8090
healthcheck:
test: ["CMD", "curl","-I" ,"-XGET", "http://localhost:8080/health"]
interval: 60s
timeout: 30s
retries: 12
links:
- elasticsearch:es
depends_on:
redis:
condition: service_healthy
elasticsearch:
condition: service_healthy
logging:
driver: "json-file"
options:
max-size: "1k"
max-file: "3"
conductor-ui:
environment:
- WF_SERVER=http://conductor-server:8080
image: niemen/conductor-ui:4.0.1
networks:
- internal
ports:
- 5001:5000
redis:
image: redis:6.2-alpine
restart: always
networks:
- internal
ports:
- '6379:6379'
command: redis-server --save 20 1 --loglevel warning
healthcheck:
test: [ "CMD", "redis-cli", "--raw", "incr", "ping" ]
interval: 10s
timeout: 10s
retries: 12
volumes:
- redis:/data
elasticsearch:
image: elasticsearch:7.17.9
environment:
- "ES_JAVA_OPTS=-Xms512m -Xmx1024m"
- transport.host=0.0.0.0
- discovery.type=single-node
- xpack.security.enabled=false
volumes:
- esdata-conductor:/usr/share/elasticsearch/data
networks:
- internal
ports:
- 9200:9200
- 9300:9300
healthcheck:
test: timeout 5 bash -c 'cat < /dev/null > /dev/tcp/localhost/9300'
interval: 5s
timeout: 5s
retries: 12
logging:
driver: "json-file"
options:
max-size: "1k"
max-file: "3"
nats:
image: nats:latest
networks:
- internal
command: "-js --http_port 8222"
ports:
- 4222:4222
- 8222:8222
nats-streaming:
image: nats-streaming:latest
networks:
- internal
ports:
- 4223:4222
- 8223:8222
schellar:
profiles: ["scheduler"]
image: flaviostutz/schellar
environment:
- CONDUCTOR_API_URL=http://conductor-server:8080/api
- MONGO_ADDRESS=mongo
- MONGO_USERNAME=root
- MONGO_PASSWORD=root
- LOG_LEVEL=info
networks:
- internal
ports:
- 3001:3000
depends_on:
- "conductor-server"
logging:
driver: "json-file"
options:
max-size: "20MB"
max-file: "5"
mongo:
image: mongo:4.1.10
profiles: ["scheduler"]
networks:
- internal
environment:
- MONGO_INITDB_ROOT_USERNAME=root
- MONGO_INITDB_ROOT_PASSWORD=root
ports:
- 27017-27019:27017-27019
volumes:
esdata-conductor:
driver: local
redis:
driver: local
networks:
internal: