fix(macmini): mount prometheus config directly so /-/reload picks up edits

VictoriaMetrics + vmalert previously copied prometheus.yml/alerts.yml from
/mnt/prometheus-config/ into /etc/prometheus/ at container start. The copy
silently drifted from the host file whenever the container wasn't restarted —
which is exactly what hid the matrix/element removal from status.mana.how
until 2026-04-08, when VM was still actively scraping the deleted targets
because its in-container config snapshot pre-dated the cleanup.

Now both containers mount ./docker/prometheus directly into /etc/prometheus
(resp. /etc/alerts) read-only and point the binary at it, and deploy.sh
issues POST /-/reload to both after each deploy so config edits go live
without a container recreate.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Till JS 2026-04-08 17:25:48 +02:00
parent a7f3577ee2
commit e8de377cfe
2 changed files with 23 additions and 4 deletions

View file

@ -105,6 +105,18 @@ check_health "Clock Web" "http://localhost:5013/health"
check_health "Contacts Backend" "http://localhost:3034/health"
check_health "Contacts Web" "http://localhost:5014/health"
echo ""
echo "=== Reloading monitoring configs ==="
# Bind-mounted prometheus.yml/alerts.yml are now read live from
# docker/prometheus/ — but a running VM/vmalert needs an explicit reload to
# pick up edits without a container restart.
docker exec mana-mon-victoria wget -qO- --post-data= http://0.0.0.0:9090/-/reload \
&& echo " victoriametrics: reloaded" \
|| echo " victoriametrics: reload failed (container down?)"
docker exec mana-mon-vmalert wget -qO- --post-data= http://0.0.0.0:8880/-/reload \
&& echo " vmalert: reloaded" \
|| echo " vmalert: reload failed (container down?)"
echo ""
echo "=== Deployment Complete ==="
echo ""