-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
127 lines (114 loc) · 2.9 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
version: '2'
services:
node:
build:
context: ./node
args:
- NODE_VERSION=latest
- NODE_ENV=development
- DEBUG=true
- PROJECT_PATH=/opt/app/
- BUNDLER=true
- BUNDLER_NAME=webpack
- YARN=false
volumes:
- ../:/opt/app
entrypoint: run-nodock "node index.js"
depends_on:
- nginx
- mongo
networks:
- intercontainer
- eventbus
tty: true
flask:
build:
context: ./containers/flask
args:
# Placeholder for runtime arguments to pass in
PROJECT_PATH=/opt/app/flask
volumes:
- ./containers/flask/src:/opt/app/flask/
entrypoint: build-flask "gunicorn -w 4 app:app"
networks:
- eventbus
- intercontainer
depends_on:
- nginx
- rabbitmq
mongo:
build: ./containers/mongo
networks:
- intercontainer
- eventbus
expose:
- "27017"
volumes_from:
- volumes
nginx:
build:
context: ./containers/nginx
args:
- WEB_REVERSE_PROXY_PORT=8000
- WEB_SSL=false
- SELF_SIGNED=false
- NO_DEFAULT=false
- SERVICE_NAME=productionService
volumes_from:
- volumes
networks:
- intercontainer
- eventbus
ports:
- "80:80"
- "443:443"
depends_on:
- certbot
tty: true
certbot:
build:
context: ./containers/certbot
networks:
- intercontainer
volumes_from:
- volumes
rabbitmq:
build:
context: ./containers/rabbitmq
args:
- MANAGEMENT=false
- FEDERATION=false
- RABBITMQ_DEFAULT_USER=guest
- RABBITMQ_DEFAULT_PASS=guest
networks:
- eventbus
- intercontainer
expose:
- "5672"
workspace:
build:
context: ./containers/workspace
args:
- NODE_VERSION=latest
- TZ=UTC
networks:
- eventbus
- admin
volumes:
- ../:/opt/app
volumes_from:
- volumes
volumes:
image: tianon/true
volumes:
- ./containers/certbot/letsencrypt/:/var/www/letsencrypt
- ./containers/certbot/certs/:/var/certs
- ./containers/mongo/data:/data
- ./containers/nginx/data/logs/:/var/log/nginx
networks:
admin:
driver: bridge
eventbus:
driver: bridge
intercontainer:
driver: bridge