feat: polish & windviz & deploy

This commit is contained in:
Anatoly Antonov 2026-05-30 06:29:39 +09:00
parent 81b8e763bd
commit 465ad00f7b
78 changed files with 20622 additions and 2154 deletions

View file

@ -0,0 +1,47 @@
# 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: