-
Notifications
You must be signed in to change notification settings - Fork 61
/
docker-compose-s3.yml
73 lines (72 loc) · 1.82 KB
/
docker-compose-s3.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
version: '3.9'
volumes:
minio_data:
mapproxy_cache_data:
services:
map:
image: 3liz/qgis-map-server:3.30
environment:
- QGSRV_SERVER_WORKERS=6
- QGSRV_LOGGING_LEVEL=DEBUG
- QGSRV_CACHE_ROOTDIR=/web
- QGSRV_CACHE_SIZE=100
- QGSRV_SERVER_TIMEOUT=300
volumes:
- ./qgis_projects:/web
minio:
image: quay.io/minio/minio
environment:
- MINIO_ROOT_USER=minio_admin
- MINIO_ROOT_PASSWORD=secure_minio_secret
entrypoint: /bin/bash
command: -c 'minio server /data --console-address ":9001"'
volumes:
- minio_data:/mapproxy
ports:
- "9000:9000"
- "9001:9001"
mapproxy:
image: kartoza/mapproxy
environment:
- PRODUCTION=true
- PROCESSES=4
- CHEAPER=2
- THREADS=10
- MAPPROXY_USER_ID=1000
- MAPPROXY_GROUP_ID=1000
- MULTI_MAPPROXY=true
- ALLOW_LISTING=True
- LOGGING=true
- AWS_ACCESS_KEY_ID=minio_admin
- AWS_SECRET_ACCESS_KEY=secure_minio_secret
- ENABLE_S3_CACHE=true
- CREATE_DEFAULT_S3_BUCKETS=true
- AWS_S3_SIGNATURE_VERSION=s3v4
- S3_BUCKET_LIST=mapproxy,bucket2
- S3_BUCKET_ENDPOINT=http://minio:9000/
volumes:
# If MULTI_MAPPROXY=true then mount to /multi_mapproxy otherwise mount to /mapproxy
- ./mapproxy_configuration:/multi_mapproxy
- mapproxy_cache_data:/cache_data
depends_on:
- map
- minio
nginx:
image: nginx
environment:
- NGINX_HOST=mapproxy-s3
- MULTI_MAPPROXY=true
volumes:
- ./web:/web
- ./sites-enabled:/etc/nginx/conf.d:ro
- ./web/nginx_conf.sh:/docker-entrypoint.d/nginx_conf.sh
logging:
driver: json-file
options:
max-size: 200m
max-file: '10'
depends_on:
- mapproxy
- map
ports:
- "80:80"