Files
routesapi/docker-compose.yml

37 lines
1.3 KiB
YAML

version: "3.9"
networks:
frontend:
external: true
services:
routes_api:
build:
context: .
dockerfile: Dockerfile
image: routes-api:latest
container_name: routes_api
restart: unless-stopped
environment:
- UVICORN_WORKERS=2
- REDIS_URL=redis://:${REDIS_PASSWORD}@routes_redis:6379/0
# Optional: Set cache TTL in seconds (default: 300 = 5 min, 86400 = 24h)
# Uncomment and set in .env file: REDIS_CACHE_TTL_SECONDS=86400
# - REDIS_CACHE_TTL_SECONDS=${REDIS_CACHE_TTL_SECONDS}
# Google Maps API key for accurate road distance calculation (actualkms)
# Set in .env file: GOOGLE_MAPS_API_KEY=your_api_key_here
- GOOGLE_MAPS_API_KEY=${GOOGLE_MAPS_API_KEY}
labels:
- traefik.enable=true
- traefik.http.routers.routes_api.rule=Host(`routes.workolik.com`)
- traefik.http.routers.routes_api.entrypoints=websecure
- traefik.http.routers.routes_api.tls.certresolver=letsencrypt
- traefik.http.services.routes_api.loadbalancer.server.port=8002
- traefik.docker.network=frontend
volumes:
- ./ml_data:/app/ml_data
- ./rider_history.pkl:/app/rider_history.pkl
- ./rider_active_state.pkl:/app/rider_active_state.pkl
networks:
- frontend