-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
127 lines (118 loc) · 2.85 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
version: '3.2'
services:
elasticsearch:
restart: always
build:
context: elasticsearch/
args:
ELK_VERSION: $ELK_VERSION
volumes:
- type: bind
source: ./elasticsearch/config/elasticsearch.yml
target: /usr/share/elasticsearch/config/elasticsearch.yml
read_only: true
- type: volume
source: elasticsearch
target: /usr/share/elasticsearch/data
ports:
- '9200:9200'
- '9300:9300'
environment:
ES_JAVA_OPTS: '-Xmx1g -Xms1g'
ELASTIC_PASSWORD: changeme
# Use single node discovery in order to disable production mode and avoid bootstrap checks
# see https://www.elastic.co/guide/en/elasticsearch/reference/current/bootstrap-checks.html
discovery.type: single-node
networks:
- elk
logstash:
build:
context: logstash/
args:
ELK_VERSION: $ELK_VERSION
volumes:
- type: bind
source: ./logstash/config/logstash.yml
target: /usr/share/logstash/config/logstash.yml
read_only: true
- type: bind
source: ./logstash/pipeline
target: /usr/share/logstash/pipeline
read_only: true
- type: bind
source: $PRODUCTS_LOCATION
target: /var/products
ports:
- '5000:5000'
- '9600:9600'
environment:
LS_JAVA_OPTS: '-Xmx512m -Xms512m'
networks:
- elk
depends_on:
- elasticsearch
kibana:
build:
context: kibana/
args:
ELK_VERSION: $ELK_VERSION
volumes:
- type: bind
source: ./kibana/config/kibana.yml
target: /usr/share/kibana/config/kibana.yml
read_only: true
ports:
- '5601:5601'
environment:
LS_JAVA_OPTS: '-Xmx512m -Xms512m'
networks:
- elk
depends_on:
- elasticsearch
curator:
build:
context: extensions/curator/
environment:
ELASTICSEARCH_HOST: elasticsearch
CRON: 0 * * * *
CONFIG_FILE: /usr/share/curator/config/curator.yml
COMMAND: /usr/share/curator/config/actions.yml
UNIT_COUNT: 2
networks:
- elk
depends_on:
- elasticsearch
nginx:
restart: always
build:
context: nginx/
ports:
- '80:80'
- '443:443'
environment:
CERTBOT_EMAIL: '[email protected]'
networks:
- elk
gateway:
restart: always
image: andreistefanie/charitydiscount-gateway
ports:
- 3000:3000
secrets:
- service_account
environment:
GOOGLE_APPLICATION_CREDENTIALS: /run/secrets/service_account
FIREBASE_NAME: charitydiscount
ELASTIC_ENDPOINT: http://elasticsearch:9200
ELASTIC_USERNAME: changeme
ELASTIC_PASSWORD: changeme
networks:
- elk
networks:
elk:
driver: bridge
volumes:
elasticsearch:
secrets:
service_account:
file: /changeme/charitydiscount.json