-
Notifications
You must be signed in to change notification settings - Fork 77
/
docker-compose.yml
169 lines (160 loc) · 4.73 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
166
167
168
169
version: '3.7'
services:
http-proxy:
image: wcogtas/http-proxy:1.0.0
container_name: http-proxy
build:
context: ./gtas-parent
dockerfile: docker-resources/proxy.Dockerfile
restart: always
ports:
- 443:443
- 80:80
networks:
- GTAS_webapp-network
secrets:
- elastic_bootstrap_password
- source: webapp_cert
target: /wcogtas.org.crt
- source: webapp_key
target: /wcogtas.org.key
web-app:
image: wcogtas/web-app:1.0.0
container_name: web-app
build:
context: ./gtas-parent
dockerfile: web-app.Dockerfile
ports:
- 8080:8080
- 8443:8443
environment:
- DB_HOST=mariadb
- KIBANA_HOST=kibana
- NEO4J_HOST=neo4j
- ACTIVEMQ_HOST=activemq
- PROXY_HOST=httpproxy
- ELASTICSEARCH=elasticsearch
networks:
- GTAS_webapp-network
restart: always
secrets:
- mysql_webapp_user
- mysql_webapp_password
- webapp_neo4j_user
- webapp_neo4j_password
- elastic_bootstrap_password
- source: webapp_cert
target: /usr/local/tomcat/conf/wcogtas.org.crt
- source: webapp_key
target: /usr/local/tomcat/conf/wcogtas.org.key
- source: elastic_cert
target: /usr/local/tomcat/conf/elasticsearch-node1.crt
- source: elastic_key
target: /usr/local/tomcat/conf/elasticsearch-node1.key
- source: elastic_ca
target: /usr/local/tomcat/conf/elastic-ca.crt
volumes:
- m2:/root/.m2
- scheduler-logs:/scheduler-logs
gtas-scheduler:
image: wcogtas/gtas-scheduler:1.0.0
container_name: gtas-scheduler
build:
context: .
dockerfile: ./gtas-parent/gtas-job-scheduler-war/gtas-scheduler.Dockerfile
restart: always
environment:
DB_HOST: mariadb
KIBANA_HOST: kibana
NEO4J_HOST: neo4j
ACTIVEMQ_HOST: activemq
volumes:
- scheduler-logs:/usr/local/tomcat/logs
secrets:
- mysql_processor_user
- mysql_processor_password
- webapp_neo4j_user
- webapp_neo4j_password
networks:
- GTAS_webapp-network
depends_on:
- activemq
activemq:
image: rmohr/activemq:5.15.9
container_name: activemq
restart: always
networks:
- GTAS_webapp-network
mariadb:
image: wcogtas/mariadb:1.0.0
build:
context: ./gtas-parent
dockerfile: mariadb.Dockerfile
container_name: mariadb
environment:
MYSQL_ROOT_PASSWORD_FILE: /run/secrets/mysql_root_password
secrets:
- mysql_etl_user
- mysql_etl_password
- mysql_processor_user
- mysql_processor_password
- mysql_webapp_user
- mysql_webapp_password
- mysql_healthcheck_user
- mysql_healthcheck_password
- mysql_logstash_user
- mysql_logstash_password
- mysql_root_password
ports:
- 3306:3306
networks:
- GTAS_webapp-network
restart: always
volumes:
- db-data:/var/lib/mysql
secrets:
mysql_etl_user:
file: ./gtas-parent/gtas-commons/secrets/mysql_etl_user.txt
mysql_etl_password:
file: ./gtas-parent/gtas-commons/secrets/mysql_etl_password.txt
mysql_healthcheck_user:
file: ./gtas-parent/gtas-commons/secrets/mysql_healthcheck_user.txt
mysql_healthcheck_password:
file: ./gtas-parent/gtas-commons/secrets/mysql_healthcheck_password.txt
mysql_logstash_user:
file: ./gtas-parent/gtas-commons/secrets/mysql_logstash_user.txt
mysql_logstash_password:
file: ./gtas-parent/gtas-commons/secrets/mysql_logstash_password.txt
elastic_bootstrap_password:
file: ./gtas-parent/gtas-commons/secrets/elastic_bootstrap_password.txt
mysql_processor_user:
file: ./gtas-parent/gtas-commons/secrets/mysql_processor_user.txt
mysql_processor_password:
file: ./gtas-parent/gtas-commons/secrets/mysql_processor_password.txt
mysql_webapp_user:
file: ./gtas-parent/gtas-commons/secrets/mysql_webapp_user.txt
mysql_webapp_password:
file: ./gtas-parent/gtas-commons/secrets/mysql_webapp_password.txt
mysql_root_password:
file: ./gtas-parent/gtas-commons/secrets/mysql_root_password.txt
webapp_neo4j_user:
file: ./gtas-parent/gtas-commons/secrets/webapp_neo4j_user.txt
webapp_neo4j_password:
file: ./gtas-parent/gtas-commons/secrets/webapp_neo4j_password.txt
elastic_key:
file: ./gtas-parent/gtas-commons/secrets/elasticsearch-node1.key
elastic_ca:
file: ./gtas-parent/gtas-commons/secrets/elastic-ca.crt
elastic_cert:
file: ./gtas-parent/gtas-commons/secrets/elasticsearch-node1.crt
webapp_cert:
file: ./gtas-parent/gtas-commons/secrets/wcogtas.org.crt
webapp_key:
file: ./gtas-parent/gtas-commons/secrets/wcogtas.org.key
volumes:
db-data:
m2:
scheduler-logs:
networks:
GTAS_webapp-network:
attachable: true