New Features
Host Resource Monitoring (CPU, RAM, Disk)
The dashboard now displays real host metrics (CPU, memory, disk) by reading directly from /proc on the machine, instead of being limited to container stats.
- New
hoststatcollector that parses/proc/stat,/proc/meminfoand mount points for accurate system metrics - API endpoint
/api/v1/resourcesenriched with host data - Dashboard
ResourceStripcomponent displays host CPU, RAM and disk gauges
Required: mount /proc read-only into the container:
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- /proc:/host/proc:roMobile-First Dashboard
Dashboard redesigned with a mobile-first approach:
- Responsive layout with adaptive grid (1 / 2 / 3 columns depending on screen size)
AlertList,ContainerDetail,ContainerEventTimelineand header components adapted for small screens- Improved PWA support: SVG icons, updated manifest, apple-touch-icon
Bug Fixes
Exit Codes 137/143 Treated as Graceful Stops
Docker stop sends SIGTERM then SIGKILL (exit 137), and containers handling SIGTERM exit with code 143. Both cases are now classified as "completed" instead of "exited" (error).
- Applied in both real-time event processing (
diehandler) and startup reconciliation (inspectAndMap) - New
containerState.tsutility module centralizing frontend state logic
Container Name Overflow in Cards
Fixed a display bug where long container names would overflow the card instead of being truncated.
Documentation
- Added screenshots to README and feature documentation (dashboard, containers, endpoints, certificates, updates, status page, MCP assistant)
- Added
/proc:/host/proc:rovolume mount to all docker-compose examples (README, installation, labels guide, security, index)
Files Changed
- Backend:
internal/resource/hoststat.go(new),internal/resource/collector.go,internal/resource/service.go,internal/api/v1/resources.go,internal/container/service.go,internal/docker/discovery.go - Frontend:
DashboardPage.vue,ContainerCard.vue,ContainerDetail.vue,AppHeader.vue,AlertList.vue,ResourceStrip.vue,ResourceSummary.vue,containerState.ts(new),resourceApi.ts - Docs:
README.md,docs/index.md,docs/security.md,docs/getting-started/installation.md,docs/guides/docker-labels.md,docs/features/*.md
Upgrading from v1.0.0
- Add the
/proc:/host/proc:rovolume to yourdocker-compose.yml - Recreate the container:
docker compose up -d --force-recreate