mirror of
https://github.com/Kpa-clawbot/meshcore-analyzer.git
synced 2026-04-26 22:55:14 +00:00
6922d63b1c
## 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>
24 lines
882 B
Bash
24 lines
882 B
Bash
#!/bin/sh
|
|
|
|
# Config lives in the data directory (bind-mounted from host)
|
|
# The Go server already searches /app/data/config.json via LoadConfig
|
|
# but the ingestor expects a direct path — symlink for compatibility
|
|
if [ -f /app/data/config.json ]; then
|
|
ln -sf /app/data/config.json /app/config.json
|
|
elif [ ! -f /app/config.json ]; then
|
|
echo "[entrypoint] No config.json found in /app/data/ — using built-in defaults"
|
|
fi
|
|
|
|
# theme.json: check data/ volume (admin-editable on host)
|
|
if [ -f /app/data/theme.json ]; then
|
|
ln -sf /app/data/theme.json /app/theme.json
|
|
fi
|
|
|
|
SUPERVISORD_CONF="/etc/supervisor/conf.d/supervisord.conf"
|
|
if [ "${DISABLE_MOSQUITTO:-false}" = "true" ]; then
|
|
echo "[config] internal MQTT broker disabled (DISABLE_MOSQUITTO=true)"
|
|
SUPERVISORD_CONF="/etc/supervisor/conf.d/supervisord-no-mosquitto.conf"
|
|
fi
|
|
|
|
exec /usr/bin/supervisord -c "$SUPERVISORD_CONF"
|