-
Notifications
You must be signed in to change notification settings - Fork 36
/
docker-compose.yml
127 lines (119 loc) · 3.01 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'
services:
vmaas_database:
container_name: vmaas-database
image: docker.io/library/postgres:16
restart: unless-stopped
shm_size: '256mb'
environment:
POSTGRES_DB: vmaas
POSTGRES_USER: vmaas_admin
POSTGRES_PASSWORD: vmaas_admin_pwd
ports:
- 5432:5432
volumes:
- vmaas-db-data:/var/lib/postgresql/data
vmaas_reposcan:
command: /vmaas/entrypoint.sh reposcan
container_name: vmaas-reposcan
hostname: vmaas-reposcan
build:
context: .
dockerfile: ./Dockerfile
args:
REQUIRE_RHEL: "no"
image: vmaas/app:latest
restart: unless-stopped
env_file:
- ./conf/common.env
- ./conf/database-connection-writer.env
- ./conf/reposcan.env
ports:
- 8081:8000
- 8083:9000
- 9082:10000
volumes:
- vmaas-dump-data:/data:z
depends_on:
- vmaas_database
vmaas_reposcan_db_init:
command: >
python3.11 -m vmaas.common.wait_for_services python3.11 -m vmaas.reposcan.database.upgrade
container_name: vmaas-reposcan-db-init
hostname: vmaas-reposcan-db-init
image: vmaas/app:latest
env_file:
- ./conf/common.env
- ./conf/database-connection-admin.env
- ./conf/reposcan.env
depends_on:
- vmaas_database
vmaas_webapp:
command: /vmaas/entrypoint.sh webapp
container_name: vmaas-webapp
hostname: vmaas-webapp
image: vmaas/app:latest
restart: unless-stopped
env_file:
- ./conf/common.env
- ./conf/webapp.env
ports:
- 8080:8000
- 9081:10000
depends_on:
- vmaas_reposcan
vmaas_webapp_go:
command: /vmaas/entrypoint.sh webapp-go
container_name: vmaas-webapp-go
hostname: vmaas-webapp-go
image: vmaas/app:latest
restart: unless-stopped
env_file:
- ./conf/common.env
- ./conf/webapp_go.env
ports:
- 8000:8000
- 9000:9000
- 9088:10000
depends_on:
- vmaas_reposcan
- vmaas_webapp # to proxy requests
vmaas_prometheus:
container_name: vmaas-prometheus
image: prom/prometheus:v2.21.0
volumes:
- prometheus-data:/prometheus
- ./monitoring/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
security_opt:
- label=disable
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--storage.tsdb.path=/prometheus'
- '--web.console.libraries=/usr/share/prometheus/console_libraries'
- '--web.console.templates=/usr/share/prometheus/consoles'
ports:
- 9090:9090
depends_on:
- vmaas_reposcan
- vmaas_webapp
restart: unless-stopped
profiles:
- monitoring
vmaas_grafana:
container_name: vmaas-grafana
build:
context: ./
dockerfile: ./monitoring/grafana/Dockerfile
image: vmaas-grafana:latest
depends_on:
- vmaas_prometheus
ports:
- 3000:3000
restart: unless-stopped
profiles:
- monitoring
volumes:
vmaas-db-data:
vmaas-dump-data:
prometheus-data:
grafana-data: