-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yaml
139 lines (131 loc) · 2.91 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
version: '3.4'
services:
postgres:
image: postgres:13-alpine
restart: always
container_name: postgres
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=dev
- POSTGRES_DB=heimdb
ports:
- '5432:5432'
networks:
- backend
volumes:
- postgres-data:/var/lib/postgresql/data
grafana:
image: grafana/grafana:latest
container_name: grafana
ports:
- "3000:3000"
volumes:
- grafana_data:/var/lib/grafana
environment:
- GF_AUTH_BASIC_ENABLED=false
- GF_AUTH_ANONYMOUS_ENABLED=true
- GF_AUTH_ANONYMOUS_ORG_ROLE=Admin
networks:
- monitoring
restart: unless-stopped
prometheus:
image: prom/prometheus:latest
container_name: prometheus
ports:
- 9090:9090
command: --config.file=/etc/prometheus/prometheus.yml
volumes:
- ./prometheus:/etc/prometheus
- prometheus_data:/prometheus
networks:
- monitoring
restart: unless-stopped
consul:
container_name: consul-badger
image: hashicorp/consul:latest
restart: always
ports:
- "8500:8500"
- "8600:8600/tcp"
- "8600:8600/udp"
networks:
- consul
command: agent -server -ui -node=server-1 -bootstrap-expect=1 -client=0.0.0.0
rabbitmq:
container_name: rabbitmq
image: rabbitmq:3-management
hostname: my-rabbit
ports:
- 15672:15672
- 5672:5672
db:
image: mongo:latest
ports:
- "27017:27017"
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: example
networks:
- backend
cache:
image: redis/redis-stack:latest
container_name: redis
environment:
- REDIS_ARGS="--requirepass redis-stack"
ports:
- 6379:6379
- 8001:8001
volumes:
- redis-cache:/data
jaeger:
image: jaegertracing/all-in-one:1.30
environment:
- COLLECTOR_OTLP_ENABLED=true
ports:
- 16686:16686
networks:
- backend
backend:
build:
context: .
dockerfile: Dockerfile
environment:
API_ACCESS_KEY: "all horses do not were spider mask"
API_GATEWAY_PORT: 8000
STORAGE_SERVICE_PORT: 8001
AUTH_SERVICE_PORT: 8002
DOCUMENT_SERVICE_PORT: 8003
MONGO_URI: mongodb://root:example@db:27017
CONSUL_ADDR: consul:8500
DB_HOST: postgres
DB_PORT: 5432
DB_USER: postgres
DB_PASSWORD: dev
DB_NAME: postgres
POSTGRES_URI: postgresql://postgres:dev@postgres:5432/postgres?sslmode=disable
ports:
- 8000:8000
- 2222:2222
depends_on:
- db
- consul
- postgres
networks:
- backend
- monitoring
- consul
restart: always
networks:
monitoring:
consul:
driver: bridge
backend:
driver: bridge
volumes:
redis-cache:
grafana_data:
prometheus_data:
mongo-data:
driver: local
postgres-data:
driver: local