meshcore-mqtt-live-map/docker-compose.yaml
2026-01-10 13:32:45 -08:00

46 lines
2 KiB
YAML

services:
meshmap:
build: ./backend
container_name: meshmap-live
ports:
- "${WEB_PORT:-8080}:8080"
environment:
DEBUG_PAYLOAD: "${DEBUG_PAYLOAD:-false}"
DEBUG_PAYLOAD_MAX: "${DEBUG_PAYLOAD_MAX:-400}"
PAYLOAD_PREVIEW_MAX: "${PAYLOAD_PREVIEW_MAX:-800}"
STATE_DIR: "${STATE_DIR:-/data}"
STATE_SAVE_INTERVAL: "${STATE_SAVE_INTERVAL:-5}"
SITE_TITLE: "${SITE_TITLE:-Greater Boston Mesh Live Map}"
SITE_DESCRIPTION: "${SITE_DESCRIPTION:-Live view of Greater Boston Mesh nodes, message routes, and advert paths.}"
SITE_OG_IMAGE: "${SITE_OG_IMAGE:-}"
SITE_URL: "${SITE_URL:-/}"
SITE_ICON: "${SITE_ICON:-/static/logo.png}"
SITE_FEED_NOTE: "${SITE_FEED_NOTE:-Feed: Boston MQTT.}"
DISTANCE_UNITS: "${DISTANCE_UNITS:-km}"
NODE_MARKER_RADIUS: "${NODE_MARKER_RADIUS:-8}"
MQTT_HOST: "${MQTT_HOST:-localhost}"
MQTT_PORT: "${MQTT_PORT:-1883}"
MQTT_USERNAME: "${MQTT_USERNAME:-}"
MQTT_PASSWORD: "${MQTT_PASSWORD:-}"
MQTT_TRANSPORT: "${MQTT_TRANSPORT:-tcp}"
MQTT_WS_PATH: "${MQTT_WS_PATH:-/mqtt}"
MQTT_TLS: "${MQTT_TLS:-false}"
MQTT_TOPIC: "${MQTT_TOPIC:-meshcore/#}"
DEVICE_TTL_SECONDS: "${DEVICE_TTL_SECONDS:-300}"
HEAT_TTL_SECONDS: "${HEAT_TTL_SECONDS:-600}"
TRAIL_LEN: "${TRAIL_LEN:-30}"
ROUTE_TTL_SECONDS: "${ROUTE_TTL_SECONDS:-120}"
ROUTE_HISTORY_ALLOWED_MODES: "${ROUTE_HISTORY_ALLOWED_MODES:-path,direct,fanout}"
MESSAGE_ORIGIN_TTL_SECONDS: "${MESSAGE_ORIGIN_TTL_SECONDS:-300}"
MQTT_ONLINE_SECONDS: "${MQTT_ONLINE_SECONDS:-300}"
MQTT_SEEN_BROADCAST_MIN_SECONDS: "${MQTT_SEEN_BROADCAST_MIN_SECONDS:-5}"
MAP_START_LAT: "${MAP_START_LAT:-42.3601}"
MAP_START_LON: "${MAP_START_LON:--71.1500}"
MAP_START_ZOOM: "${MAP_START_ZOOM:-10}"
MAP_RADIUS_KM: "${MAP_RADIUS_KM:-0}"
MAP_RADIUS_SHOW: "${MAP_RADIUS_SHOW:-false}"
MAP_DEFAULT_LAYER: "${MAP_DEFAULT_LAYER:-light}"
COVERAGE_API_URL: "${COVERAGE_API_URL:-}"
restart: unless-stopped
volumes:
- ./data:/data