-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.dev.yml
118 lines (117 loc) · 2.46 KB
/
docker-compose.dev.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
# -*- coding: utf-8 -*-
#
# Copyright (C) 2018 CERN.
#
# CERN Analysis Preservation is free software; you can redistribute it and/or modify it
# under the terms of the MIT License; see LICENSE file for more details.
version: "2.3"
services:
nginx:
restart: "always"
build:
context: ./docker/nginxdev
ports:
- "80:80"
- "443:443"
depends_on:
- frontend
- web-api
# Frontend
frontend:
build:
context: ./ui
ports:
- "3000:3000"
volumes:
- ./ui/cap-react/src:/app/cap-react/src
- ./ui/cap-react/tools:/app/cap-react/tools
links:
- web-api
# API Rest Application
web-api:
extends:
file: docker-services.yml
service: app
command: gunicorn -b 0.0.0.0:5000 --access-logfile "-" --reload --log-level debug cap.wsgi:application
ports:
- "5000"
volumes:
- static_data:/opt/cap/var/instance/static
- uploaded_data:/opt/cap/var/instance/data
- media_data:/opt/cap/var/data
- ./cap:/opt/cap/src/cap
- ./demo:/opt/cap/demo
environment:
- "FLASK_DEBUG=True"
- "DEBUG_MODE=True"
- "DEV_HOST=nginx"
links:
- cache
- es
- mq
- db
stdin_open: true
tty: true
# API Files Application
files-api:
extends:
file: docker-services.yml
service: app
command: gunicorn -b 0.0.0.0:5000 --access-logfile "-" --reload --log-level debug cap.wsgi:application
ports:
- "5000"
volumes:
- static_data:/opt/cap/var/instance/static
- uploaded_data:/opt/cap/var/instance/data
- ./cap:/opt/cap/src/cap
links:
- cache
- es
- mq
- db
stdin_open: true
tty: true
# Worker
worker:
extends:
file: docker-services.yml
service: app
restart: "always"
command: "celery worker -A cap.celery --loglevel=INFO"
links:
- cache
- es
- mq
- db
# Monitoring
flower:
extends:
file: docker-services.yml
service: flower
links:
- mq
# Base services
cache:
extends:
file: docker-services.yml
service: cache
db:
extends:
file: docker-services.yml
service: db
mq:
extends:
file: docker-services.yml
service: mq
es:
extends:
file: docker-services.yml
service: es
# statping:
# extends:
# file: docker-services.yml
# service: statping
volumes:
static_data:
uploaded_data:
media_data: