mirror of
https://github.com/Kpa-clawbot/meshcore-analyzer.git
synced 2026-04-09 22:55:38 +00:00
## Summary - add `DISABLE_MOSQUITTO` support in container startup by switching supervisord config when disabled - add a no-mosquitto supervisord config (`docker/supervisord-go-no-mosquitto.conf`) - fix Compose port mapping regression so host ports map to fixed internal listener ports (`80`, `443`, `1883`) - add compose variants without MQTT port publishing (`docker-compose.no-mosquitto.yml`, `docker-compose.staging.no-mosquitto.yml`) - update `manage.sh` setup flow to ask `Use built-in MQTT broker? [Y/n]`, skip MQTT port prompt when disabled, persist `DISABLE_MOSQUITTO`, and use no-mosquitto compose files when starting/stopping/restarting - align `.env.example` staging keys with compose (`STAGING_GO_HTTP_PORT`, `STAGING_GO_MQTT_PORT`) - fix staging Caddyfile generation to use `STAGING_GO_HTTP_PORT` - fix `.env.example` staging default comments to match actual values (82/1885) ## Validation performed - ✅ `bash -n manage.sh` passes. - ✅ With `DISABLE_MOSQUITTO=true`, no-mosquitto compose overrides are selected, Mosquitto is not started, and MQTT port is not published. - ✅ With `DISABLE_MOSQUITTO=false`, standard compose files are used, Mosquitto starts, and MQTT port mapping is present. - ℹ️ Runtime Docker validation requires a running Docker host. Fixes #267 --------- Co-authored-by: Kpa-clawbot <259247574+Kpa-clawbot@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
52 lines
1.4 KiB
Plaintext
52 lines
1.4 KiB
Plaintext
# MeshCore Analyzer — Environment Configuration
|
|
# Copy to .env and customize. All values have sensible defaults.
|
|
#
|
|
# This file is read by BOTH docker compose AND manage.sh — one source of truth.
|
|
# manage.sh setup negotiates and updates only these production managed keys:
|
|
# PROD_DATA_DIR, PROD_HTTP_PORT, PROD_HTTPS_PORT, PROD_MQTT_PORT, DISABLE_MOSQUITTO
|
|
# Each environment keeps config + data together in one directory:
|
|
# ~/meshcore-data/config.json, meshcore.db, Caddyfile, theme.json
|
|
# ~/meshcore-staging-data/config.json, meshcore.db, Caddyfile
|
|
|
|
# --- Production ---
|
|
# Data directory (database, theme, etc.)
|
|
# Default: ~/meshcore-data
|
|
# Used by: docker compose, manage.sh
|
|
PROD_DATA_DIR=~/meshcore-data
|
|
|
|
# HTTP port for web UI
|
|
# Default: 80
|
|
# Used by: docker compose
|
|
PROD_HTTP_PORT=80
|
|
|
|
# HTTPS port for web UI (TLS via Caddy)
|
|
# Default: 443
|
|
# Used by: docker compose
|
|
PROD_HTTPS_PORT=443
|
|
|
|
# MQTT port for observer connections
|
|
# Default: 1883
|
|
# Used by: docker compose
|
|
PROD_MQTT_PORT=1883
|
|
|
|
# Disable internal Mosquitto broker (set true to use external MQTT only)
|
|
# Default: false
|
|
# Used by: manage.sh + docker compose overrides
|
|
DISABLE_MOSQUITTO=false
|
|
|
|
# --- Staging (HTTP only, no HTTPS) ---
|
|
# Data directory
|
|
# Default: ~/meshcore-staging-data
|
|
# Used by: docker compose
|
|
STAGING_DATA_DIR=~/meshcore-staging-data
|
|
|
|
# HTTP port
|
|
# Default: 82
|
|
# Used by: docker compose
|
|
STAGING_GO_HTTP_PORT=82
|
|
|
|
# MQTT port
|
|
# Default: 1885
|
|
# Used by: docker compose
|
|
STAGING_GO_MQTT_PORT=1885
|