Files
momentum-system/deploy/systemd/momentum-dashboard.service
T
momentum devandClaude Opus 4.8 5ac2cc7b89 Docs cleanup: current-state rewrite + three deployment modes + history/
- 10 era documents (phase plans, build summaries, redesign writeups, old
  runbooks, completed consolidation plan) moved to docs/history/ with a
  do-not-follow README.
- Root README: current validated population ($2-20, 10-35% static gap +
  squeeze exception, SIP), Deployment section, automated-maintenance
  reality, corrected repo map (admin panel, youtube_claims, deploy/).
- RUNBOOK rewritten for the running system: daily rhythm, health checks
  per deployment, and the production failure-mode table earned this week
  (env drift, pgdata mount traps, uid 10001, zombie approvals, PG_SKIP_
  SCHEMA, timezone artifacts).
- deploy/README.md is now the three-mode index: compose (canonical),
  systemd (local dev — unit templates now committed), helm (refresh
  staged as issue #8). Old k8s doc moved to deploy/helm/README.md.
- docker/README.md: six TrueNAS gotchas, each from a real outage.
- Admin panel improvements staged as GitHub issues #4-#7.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-10 10:56:53 -04:00

22 lines
853 B
Desktop File

[Unit]
Description=Momentum dashboard (read-only web UI on :8765)
# Self-heal forever: a DB blip or crash must not leave the website down. Decoupled
# from the loop on purpose -- a loop restart never takes the dashboard down and vice versa.
StartLimitIntervalSec=0
[Service]
Type=simple
WorkingDirectory=/mnt/c/code/momentum
# dashboard_api.py loads .env (DATABASE_URL -> the LAN Postgres, with the host fallback)
# and binds DASHBOARD_HOST (default 0.0.0.0) : DASHBOARD_PORT (.env=8765) so it is reachable
# from the Windows browser via the netsh portproxy.
ExecStart=/home/philip/.venvs/momentum/bin/python -u dashboard_api.py
Restart=always
RestartSec=15
StandardOutput=append:/mnt/c/code/momentum/data/dashboard.log
StandardError=append:/mnt/c/code/momentum/data/dashboard.log
SyslogIdentifier=momentum-dashboard
[Install]
WantedBy=default.target