This repository has been archived by the owner on Jun 14, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yaml
81 lines (74 loc) · 1.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
version: "3"
services:
web:
build:
context: ./client
dockerfile: Dockerfile
args:
REACT_APP_SERVER_ADDRESS: http://localhost:5000
image: dev/schema-matching-client:latest
ports:
- 3000:3000
# WSGI Flask service containing the schema matching API
engine:
build: ./engine
image: dev/schema-matching-engine:latest
ports:
- 5000:5000
env_file:
- env_files/redis.env
- env_files/minio.env
- env_files/rabbitmq.env
restart: always
command: gunicorn -b 0.0.0.0:5000 app:app -t 60 -w 1 --threads 1
# S3-like object store holding the data that we want to match
minio:
image: minio/minio:latest
ports:
- 9000:9000
volumes:
- ./minio-volume:/mnt/data
env_file:
- env_files/minio.env
command: server /mnt/data
# Celery worker that does schema matching jobs
celery-worker:
build: ./engine
image: dev/schema-matching-engine:latest
restart: always
environment:
- PYTHONUNBUFFERED=1
env_file:
- env_files/redis.env
- env_files/minio.env
- env_files/rabbitmq.env
command: celery worker -A app.celery --loglevel=info
redis:
image: redis:latest
command: redis-server --requirepass redis
ports:
- 6379:6379
# Message queue required by Celery
celery-rabbitmq:
image: rabbitmq:management
restart: always
env_file: env_files/rabbitmq.env
ports:
- 5672:5672
- 15672:15672
# Celery Flower dashboard
celery-flower:
build: ./engine
image: dev/schema-matching-engine:latest
command: "celery flower -A app.celery flower --broker_api=http://rabbitmq:rabbitmq@celery-rabbitmq:15672/api/"
restart: always
environment:
- FLOWER_PORT=5555
env_file:
- env_files/redis.env
- env_files/minio.env
- env_files/rabbitmq.env
ports:
- 5555:5555
depends_on:
- celery-worker