Files
CartoLite-Server/compose.yml
T
n30nex d5bd53a29c CartoLite Server 0.6.0: cinematic Map and Netgraph (#17)
* Build cinematic display controls and shared GPU packet effects

* Add scoped Follow and adaptive scene hierarchy

* Add explicit sound preview and streamline map chrome

* Add Netgraph live director and cinematic acceptance

* Refine cinematic focus and renderer lifecycle

* Fix menu history races and Follow inspection

* Prepare Worldwide 0.6.0 cinematic release candidate

* Fix mobile layer positioning and verify composited packet colors

* Validate each visual scene independently and retain bounded CI evidence

* Restore worldwide grouping and adapt GPU effects to frame cost

* Bound GPU presentation cost without dropping packet motion

* Keep dock controls reachable and avoid redundant backdrop rendering

* Keep phone legends and touch targets clear of the dock

* Keep Netgraph Follow scoped, readable and steady

* Retain mobile reset and bound dense-scene presentation cost

* Keep traffic controls and node details legible in landscape

* Focus Finder within its opening gesture to prevent menu races

* Frame Follow above its controls and release owned graphics contexts

* Verify map dismissal after the camera gesture settles

* Pack shared route attributes once per segment

* Keep map attribution accessible above the mobile dock

* Remove inactive map effect layers and sample packet lifetimes deterministically

* Synchronize dense-scene fallback even when packet animation is idle

* Verify effect-layer ownership with complete map test doubles
2026-09-27 02:55:30 -04:00

46 lines
1.2 KiB
YAML

name: cartolite-server
services:
cartolite:
image: ${CARTOLITE_IMAGE:-ghcr.io/n30nex/cartolite-server:0.6.0}
restart: unless-stopped
ports:
- "${CARTOLITE_BIND_ADDR:-127.0.0.1}:${CARTOLITE_PORT:-8080}:8080"
environment:
HTTP_ADDR: :8080
MQTT_ENABLED: "true"
MQTT_BROKER_URL: ${MQTT_BROKER_URL:?Set MQTT_BROKER_URL}
MQTT_TOPIC: ${MQTT_TOPIC:-meshcore/#}
MQTT_CLIENT_ID: ${MQTT_CLIENT_ID:-cartolite-server}
MQTT_USERNAME: ${MQTT_USERNAME:-}
MQTT_PASSWORD: ${MQTT_PASSWORD:-}
REGION_ALLOWLIST: ${REGION_ALLOWLIST:-}
MQTT_INGEST_QUEUE_SIZE: ${MQTT_INGEST_QUEUE_SIZE:-4096}
STATE_PATH: ${STATE_PATH:-/data/state-v1.json}
LOG_LEVEL: ${LOG_LEVEL:-info}
BASEMAP_PROVIDER: openfreemap
volumes:
- cartolite-data:/data
read_only: true
cap_drop:
- ALL
security_opt:
- no-new-privileges:true
mem_limit: 256m
pids_limit: 128
stop_grace_period: 20s
healthcheck:
test: ["CMD", "/cartolite", "healthcheck", "http://127.0.0.1:8080/healthz"]
interval: 20s
timeout: 5s
retries: 3
start_period: 15s
logging:
driver: json-file
options:
max-size: 10m
max-file: "3"
volumes:
cartolite-data: