-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathdocker-compose.prod.yml
More file actions
52 lines (49 loc) · 1.54 KB
/
docker-compose.prod.yml
File metadata and controls
52 lines (49 loc) · 1.54 KB
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
services:
db:
container_name: mapdb-postgres
image: postgres:18
volumes:
- ${POSTGRES_DATA_DIR}:/var/lib/postgresql
environment:
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
env_file:
- .env
command: -p ${POSTGRES_PORT}
networks:
- mapdb-network
django:
container_name: mapdb-django
image: ghcr.io/cncnet/cncnet-map-api:${APP_TAG}
volumes:
- ${HOST_MEDIA_ROOT}:/data/cncnet_silo # django will save user-uploaded files here. MEDIA_ROOT
- ${HOST_STATIC_ROOT}:/data/cncnet_static # django will gather static files here. STATIC_ROOT
- ./docker/data/kirovy/logs:/var/log/kirovy # Log files
env_file:
- .env
depends_on:
- db
networks:
- mapdb-network
nginx-server:
# nginx proxies requests to django via gunicorn.
container_name: mapdb-nginx
image: nginx:latest
volumes:
- ./docker/nginx.prod.conf:/etc/nginx/nginx.conf:ro
- ${SSL_CERT_PATH}:/etc/nginx/ssl/certs/fullchain.pem:ro
- ${SSL_KEY_PATH}:/etc/nginx/ssl/certs/privkey.pem:ro
- ${HOST_STATIC_ROOT}:/usr/share/nginx/html/static # website static assets.
- ${HOST_MEDIA_ROOT}:/usr/share/nginx/html/silo # website user-uploaded files.
- ./docker/data/nginx/logs:/var/log/nginx
ports:
- "${EXPOSED_PORT:-80}:80"
- "${EXPOSED_SSL_PORT:-443}:443"
depends_on:
- django
networks:
- mapdb-network
networks:
mapdb-network:
driver: bridge