maps/backend/docker-compose.yml
2026-03-30 10:04:03 +02:00

73 lines
1.6 KiB
YAML

services:
backend:
build: .
ports:
- "8080:8080"
environment:
HOST: "0.0.0.0"
PORT: "8080"
MARTIN_URL: "http://martin:3000"
PHOTON_URL: "http://photon:2322"
OSRM_DRIVING_URL: "http://osrm-driving:5000"
OSRM_WALKING_URL: "http://osrm-walking:5000"
OSRM_CYCLING_URL: "http://osrm-cycling:5000"
DATABASE_URL: "postgres://maps:maps@postgres:5432/maps"
REDIS_URL: "redis://redis:6379"
OFFLINE_DATA_DIR: "/data/offline"
depends_on:
- postgres
- redis
- martin
- photon
- osrm-driving
- osrm-walking
- osrm-cycling
postgres:
image: docker.io/postgis/postgis:16-3.4
ports:
- "5432:5432"
environment:
POSTGRES_USER: maps
POSTGRES_PASSWORD: maps
POSTGRES_DB: maps
volumes:
- pgdata:/var/lib/postgresql/data
redis:
image: docker.io/redis:7-alpine
ports:
- "6379:6379"
command: redis-server --maxmemory 2gb --maxmemory-policy allkeys-lru
martin:
image: ghcr.io/maplibre/martin
ports:
- "3000:3000"
environment:
DATABASE_URL: "postgres://maps:maps@postgres:5432/maps"
depends_on:
- postgres
photon:
image: docker.io/komoot/photon:latest
ports:
- "2322:2322"
osrm-driving:
image: docker.io/osrm/osrm-backend:latest
ports:
- "5000:5000"
osrm-walking:
image: docker.io/osrm/osrm-backend:latest
ports:
- "5001:5000"
osrm-cycling:
image: docker.io/osrm/osrm-backend:latest
ports:
- "5002:5000"
volumes:
pgdata: