-
Notifications
You must be signed in to change notification settings - Fork 53
/
docker-compose.yml
90 lines (80 loc) · 2.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
# docker-compose -f docker-compose.yml up
version: '3.7'
services:
db:
image: mariadb:11.0.2
env_file: docker/environment_variables/db.env
volumes:
- db_data:/var/lib/mysql
- "./docker/scripts/mariadb-init.sh:/docker-entrypoint-initdb.d/db-init.sh"
rabbitmq:
image: rabbitmq:3.13.2-management
env_file: docker/environment_variables/rabbitmq.env
volumes:
- rabbitmq_data:/var/lib/rabbitmq
redis-cache:
image: redis:6.2.13-alpine
command:
- sh
- -c
- redis-server --maxmemory-policy allkeys-lru --requirepass $$REDIS_PASSWORD ## $$ because of docker-compose
env_file: docker/environment_variables/redis.env
django: &django
image: ${SQUEST_IMAGE:-quay.io/hewlettpackardenterprise/squest}:${SQUEST_TAG:-latest}
env_file: docker/environment_variables/squest.env
volumes:
- django_static:/app/static
- django_media:/app/media
- backup:/app/backup
- ./plugins:/app/plugins
depends_on:
- db
- rabbitmq
- celery-worker
- celery-beat
- redis-cache
nginx:
command: nginx -c /etc/nginx/squest/nginx.conf
image: nginx:1.23.4-alpine
depends_on:
- django
volumes:
- django_media:/app/media:ro
- django_static:/app/static:ro
- ./docker/nginx.conf:/etc/nginx/squest/nginx.conf:ro
maintenance:
image: nginx:1.23.4-alpine
volumes:
- ./docker/maintenance.html:/usr/share/nginx/html/index.html
- ./docker/maintenance.nginx.conf:/etc/nginx/conf.d/default.conf
- ./project-static/squest/img/squest_logo_v2_300_300.png:/usr/share/nginx/html/squest_logo_v2_300_300.png
celery-worker:
<<: *django
env_file:
- docker/environment_variables/squest.env
- docker/environment_variables/celery.env
depends_on:
- db
- rabbitmq
ports: []
command: >
bash -c "/wait &&
celery -A service_catalog worker -l info"
celery-beat:
<<: *django
env_file:
- docker/environment_variables/squest.env
- docker/environment_variables/celery.env
depends_on:
- db
- rabbitmq
ports: []
command: >
bash -c "/wait &&
celery -A service_catalog beat -l info"
volumes:
db_data: {}
rabbitmq_data: {}
django_static: {}
django_media: {}
backup: {}