forked from StackStorm/st2-docker
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
165 lines (159 loc) · 3.28 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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
version: '3'
services:
st2client: &base
image: stackstorm/stackstorm:${ST2_IMAGE_TAG:-latest}
env_file:
- conf/stackstorm.env
- conf/mongo.env
- conf/rabbitmq.env
- conf/postgres.env
- conf/redis.env
- common.env
networks:
- private
restart: on-failure
environment:
- ST2_SERVICE=nop
dns_search: .
st2api:
<<: *base
environment:
- ST2_SERVICE=st2api
volumes:
- stackstorm-packs:/opt/stackstorm/packs
st2auth:
<<: *base
environment:
- ST2_SERVICE=st2auth
st2stream:
<<: *base
environment:
- ST2_SERVICE=st2stream
st2sensorcontainer:
<<: *base
environment:
- ST2_SERVICE=st2sensorcontainer
volumes:
- stackstorm-packs:/opt/stackstorm/packs
- stackstorm-virtualenvs:/opt/stackstorm/virtualenvs
st2rulesengine:
<<: *base
environment:
- ST2_SERVICE=st2rulesengine
st2timersengine:
<<: *base
environment:
- ST2_SERVICE=st2timersengine
st2workflowengine:
<<: *base
environment:
- ST2_SERVICE=st2workflowengine
st2actionrunner:
<<: *base
environment:
- ST2_SERVICE=st2actionrunner
- ST2_ACTION_AUTH_URL=http://st2auth:9100/
volumes:
- stackstorm-packs:/opt/stackstorm/packs
- stackstorm-virtualenvs:/opt/stackstorm/virtualenvs
st2scheduler:
<<: *base
environment:
- ST2_SERVICE=st2scheduler
st2resultstracker:
<<: *base
environment:
- ST2_SERVICE=st2resultstracker
st2notifier:
<<: *base
environment:
- ST2_SERVICE=st2notifier
st2garbagecollector:
<<: *base
environment:
- ST2_SERVICE=st2garbagecollector
mistral-api:
<<: *base
environment:
- ST2_SERVICE=mistral-api
restart: on-failure
mistral-server:
<<: *base
environment:
- ST2_SERVICE=mistral-server
restart: on-failure
st2web:
<<: *base
environment:
- ST2_SERVICE=st2web
- ST2WEB_DNS_RESOLVER=st2web-dns
ports:
- "443:443"
networks:
- public
- private
st2web-dns:
image: janeczku/go-dnsmasq:latest
environment:
- DNSMASQ_ENABLE_SEARCH=1
networks:
- private
dns_search: .
### External Services
mongo:
image: mongo:3.4
env_file:
- conf/mongo.env
networks:
- private
volumes:
- mongo-volume:/data/db
- mongo-configdb-volume:/data/configdb
dns_search: .
rabbitmq:
image: rabbitmq:management
env_file:
- conf/rabbitmq.env
networks:
- private
volumes:
- rabbitmq-volume:/var/lib/rabbitmq
dns_search: .
postgres:
image: postgres:latest
env_file:
- conf/postgres.env
networks:
- private
volumes:
- postgres-volume:/var/lib/postgresql/data
dns_search: .
redis:
image: redis:latest
env_file:
- conf/redis.env
networks:
- private
volumes:
- redis-volume:/data
dns_search: .
command: [
"bash", "-c",
'
docker-entrypoint.sh
--requirepass "$$REDIS_PASSWORD"
'
]
volumes:
mongo-volume:
mongo-configdb-volume:
postgres-volume:
rabbitmq-volume:
redis-volume:
stackstorm-packs:
stackstorm-virtualenvs:
networks:
public:
driver: bridge
private:
driver: bridge