How bullygen/podmon works
Podmon is a LAN web dashboard for monitoring all containers belonging to the current rootless Podman user. The browser loads the dashboard and periodically requests host and container snapshots; the FastAPI service serves those cached results rather than polling Podman per request. A background collector refreshes container details, resource statistics, processes, and logs, then derives process-candidate and activity hints. The README documents search, container lifecycle details, logs, and optional host metrics. The sampled source shows the collector and parsing logic; dashboard markup and deployment wiring were not sampled.
Main entry points: main.py Background collector · app.js Dashboard UI · index.html Dashboard page · host_metrics.py Host metrics
Components 13
Dashboard
- Dashboard UI
service/static/app.js - Dashboard page
service/app/templates/index.html
Web service
- HTTP API
service/app/main.py - Cached snapshot
service/app/main.py - Log cache
service/app/main.py
Collection and analysis
- Background collector
service/app/main.py - Host metrics
service/app/host_metrics.py - Stats and process parsing
service/app/models.py - Process assessment
service/app/process_status.py
Data sources
- Podman client
service/app/podman_client.py
Other components
- LAN browser
- Rootless Podman
- Read-only host files
Connections 14
- LAN browser → Dashboard page: opens dashboard
- Dashboard page → Dashboard UI: loads script
- LAN browser → HTTP API: requests snapshots
- HTTP API → Cached snapshot: reads cached data
- HTTP API → Log cache: reads cached logs
- Dashboard UI → HTTP API: fetches updates
- Background collector → Cached snapshot: writes snapshot
- Background collector → Log cache: updates logs
- Background collector → Host metrics: collects host data
- Host metrics → Read-only host files: reads metrics
- Background collector → Podman client: requests container data
- Podman client → Rootless Podman: calls Unix socket API
- Background collector → Stats and process parsing: parses stats and processes
- Background collector → Process assessment: assesses activity