Files
CartoLite-Server/compose.yml
T
n30nex f7941b7a95 Upgrade visual styling and ship prebuilt worldwide Docker images (#12)
* Add shared visual controls and native prebuilt worldwide Docker releases

* Validate shared styles, synthetic buildings, and date-line-safe packet geometry

* Document the release and bound decorative work in dense route views

* Remove the retired terrain-history collection cache

* Address review feedback on terrain updates, legends, and responsive buildings

* Keep the region and packet legends separate on compact screens

* Separate building, camera, and responsive browser checks

* Wait for the complete synthetic snapshot before upgrade checks
2026-09-12 18:36:06 -04:00

46 lines
1.2 KiB
YAML

name: cartolite-server
services:
cartolite:
image: ${CARTOLITE_IMAGE:-ghcr.io/n30nex/cartolite-server:0.5.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: