forked from raster-foundry/raster-foundry
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.yml
131 lines (125 loc) · 3.72 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
130
131
version: '2.3'
services:
postgres:
image: quay.io/azavea/postgis:2.3-postgres9.6-slim
volumes:
- ./data/:/tmp/data/
env_file: .env
expose:
- "5432"
healthcheck:
test: ["CMD", "pg_isready", "-U", "${POSTGRES_USER}"]
interval: 5s
timeout: 5s
retries: 3
start_period: 10s
memcached:
image: memcached:1.4-alpine
command: -m 4096 -c 8192 -I 5242880b
nginx-api:
image: raster-foundry-nginx-api
build:
context: ./nginx
dockerfile: Dockerfile.api
ports:
- "9100:443"
extra_hosts:
- "tile-server:127.0.0.1"
links:
- api-server
volumes:
- ./nginx/srv/dist/:/srv/dist/
- ./nginx/etc/nginx/nginx.conf:/etc/nginx/nginx.conf
- ./nginx/etc/nginx/includes/:/etc/nginx/includes/
- ./nginx/etc/nginx/conf.d/api.conf:/etc/nginx/conf.d/default.conf
nginx-tiler:
image: raster-foundry-nginx-tiler
build:
context: ./nginx
dockerfile: Dockerfile.tiler
ports:
- "9101:443"
extra_hosts:
- "api-server:127.0.0.1"
links:
- tile-server
volumes:
- ./nginx/srv/dist/:/srv/dist/
- ./nginx/etc/nginx/nginx.conf:/etc/nginx/nginx.conf
- ./nginx/etc/nginx/includes/:/etc/nginx/includes/
- ./nginx/etc/nginx/conf.d/tiler.conf:/etc/nginx/conf.d/default.conf
api-server:
image: openjdk:8-jre
links:
- postgres:database.service.rasterfoundry.internal
external_links:
- statsd
depends_on:
postgres:
condition: service_healthy
env_file: .env
ports:
- "9000:9000"
- "9010:9010"
volumes:
- ./app-backend/:/opt/raster-foundry/app-backend/
- ./scratch/:/opt/raster-foundry/scratch/
- ./.sbt:/root/.sbt
- ./.bintray:/root/.bintray
- $HOME/.aws:/root/.aws:ro
working_dir: /opt/raster-foundry/app-backend/
entrypoint: ./sbt
command:
- "api/run"
- "-Dcom.sun.management.jmxremote.rmi.port=9010"
- "-Dcom.sun.management.jmxremote=true"
- "-Dcom.sun.management.jmxremote.port=9010"
- "-Dcom.sun.management.jmxremote.ssl=false"
- "-Dcom.sun.management.jmxremote.authenticate=false"
- "-Dcom.sun.management.jmxremote.local.only=false"
- "-Djava.rmi.server.hostname=localhost"
batch:
image: raster-foundry-batch
volumes:
- ./app-tasks/rf/:/opt/raster-foundry/app-tasks/rf/
- ./app-backend/batch/target/scala-2.11/rf-batch.jar:/opt/raster-foundry/jars/rf-batch.jar
- $HOME/.aws:/root/.aws:ro
build:
context: ./app-tasks
dockerfile: Dockerfile
external_links:
- postgres:database.service.rasterfoundry.internal
- api-server:rasterfoundry.com
env_file: .env
environment:
- RF_HOST=http://rasterfoundry.com:9000
- LOCAL_INGEST_CORES=2
- LOCAL_INGEST_MEM_GB=4
command: rf
tile-server:
image: openjdk:8-jre
links:
- postgres:database.service.rasterfoundry.internal
- memcached:tile-cache.service.rasterfoundry.internal
external_links:
- statsd
env_file: .env
ports:
- "9900:9900"
- "9020:9020"
volumes:
- ./app-backend/:/opt/raster-foundry/app-backend/
- ./.sbt:/root/.sbt
- ./.bintray:/root/.bintray
- $HOME/.aws:/root/.aws:ro
working_dir: /opt/raster-foundry/app-backend/
entrypoint: ./sbt
command:
- "tile/run"
- "-Dcom.sun.management.jmxremote.rmi.port=9020"
- "-Dcom.sun.management.jmxremote=true"
- "-Dcom.sun.management.jmxremote.port=9020"
- "-Dcom.sun.management.jmxremote.ssl=false"
- "-Dcom.sun.management.jmxremote.authenticate=false"
- "-Dcom.sun.management.jmxremote.local.only=false"
- "-Djava.rmi.server.hostname=localhost"