-
Notifications
You must be signed in to change notification settings - Fork 41
/
docker-compose.yml
129 lines (119 loc) · 2.43 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
128
129
version: '3.1'
services:
composer:
build:
context: ./deps/story-tools-composer
args:
- DEPLOYMENT=production
image: quay.io/mapstory/composer:$TAG
command: --no-op
networks:
internal:
expose:
- "9090"
pgadmin:
build:
context: ./docker/pgadmin
image: quay.io/mapstory/pgadmin:$TAG
volumes:
- pgadmin:/var/lib/pgadmin
networks:
internal:
expose:
- "5050"
elasticsearch:
image: elasticsearch:1.6
networks:
internal:
expose:
- "9200"
rabbitmq:
build:
context: ./docker/rabbitmq
image: quay.io/mapstory/rabbitmq:$TAG
networks:
internal:
expose:
- "15671"
- "15672"
django:
build:
context: .
image: quay.io/mapstory/django:$TAG
depends_on:
- django_volumes
- pgadmin
links:
- elasticsearch
- rabbitmq
volumes:
- mapstory_media:/var/lib/mapstory/media/
networks:
internal:
expose:
- "8000"
celery:
image: quay.io/mapstory/django:$TAG
depends_on:
- django_volumes
links:
- elasticsearch
- rabbitmq
command: --celery
volumes:
- mapstory_media:/var/lib/mapstory/media/
networks:
internal:
expose:
- "8000"
django_volumes:
image: quay.io/mapstory/django:$TAG
user: root
entrypoint: /bin/sh -c "chown -R mapstory:mapstory /var/lib/mapstory && chmod -R a+x /var/lib/mapstory"
volumes:
- mapstory_media:/var/lib/mapstory/media/
geoserver:
image: quay.io/mapstory/geoserver:2.12.x-1.2.x
volumes:
- geoserver:/var/lib/geoserver
environment:
- GEOSERVER_CONTACT_ORG=MapStory
- GEOSERVER_CONTACT_PERSON=MapStory
- GEOSERVER_CONTACT_EMAIL=info@mapstory.org
networks:
internal:
expose:
- "8080"
nginx:
build:
context: ./docker/nginx
args:
- TAG
image: quay.io/mapstory/nginx:$TAG
depends_on:
- celery
- composer
links:
- django
- geoserver
volumes:
- mapstory_media:/var/lib/mapstory/media/:ro
environment:
- NGINX_NUM_WORKERS=2
- NGINX_GZIP_COMP_LEVEL=4
- NGINX_FILE_CACHE_ENABLED=False
- NGINX_CLIENT_MAX_BODY_SIZE=500m
networks:
internal:
expose:
- "80"
- "443"
ports:
- "80:80"
- "443:443"
networks:
internal:
volumes:
geoserver:
mapstory_media:
pgadmin: