# Staging: resembles production on a single host — all features enabled # (metrics, wind visualization, async predictions) plus a bundled Prometheus # so the metrics pipeline can be exercised end to end. Runs non-root like prod. # # docker compose -f docker-compose.staging.yml up --build # curl localhost:8080/api/v1/admin/status # open http://localhost:9090 (Prometheus, predictor target should be UP) services: init-perms: image: busybox:1.36 command: ["sh", "-c", "mkdir -p /data && chown -R 65532:65532 /data"] volumes: - predictor-data:/data predictor: build: context: . args: VERSION: staging REVISION: staging image: stratoflights-predictor:staging depends_on: init-perms: condition: service_completed_successfully ports: - "8080:8080" environment: PREDICTOR_DATA_DIR: /data PREDICTOR_METRICS_ENABLED: "true" PREDICTOR_METRICS_PATH: /metrics PREDICTOR_LOG_LEVEL: info PREDICTOR_DOWNLOAD_PARALLEL: "16" volumes: - predictor-data:/data # - ./elevation:/srv/ruaumoko-dataset:ro prometheus: image: prom/prometheus:v2.54.1 depends_on: - predictor ports: - "9090:9090" volumes: - ./deploy/prometheus.yml:/etc/prometheus/prometheus.yml:ro volumes: predictor-data: