Files
ContainerFlow/tareas/completadas/03-websocket-stats.md
T
2026-03-22 09:53:08 +00:00

931 B

03 — WebSocket + Stats + Docker Events

Objetivo

Enviar datos en tiempo real al frontend via WebSocket: servicios, stats y eventos Docker.

Tareas

  • src/server/watcher.tspollStats():
    • CPU y MEM por container (solo running)
    • Calcula cpu_percent, mem_mb, mem_percent
  • src/server/watcher.tswatchDockerEvents():
    • Stream de Docker events API
    • Filtra por Type: "container"
    • Emite: start, stop, die, restart, health_status
  • WebSocket en src/server/index.ts:
    • Bun.serve con websocket handler
    • broadcast() a todos los clients conectados
    • Polling de services + connections + stats cada 3s
    • Docker events en tiempo real
  • src/client/hooks/useDocker.ts:
    • Hook que conecta al WebSocket
    • Mantiene estado de services, connections, stats, events

Criterio de completado

Abrir el dashboard, la consola del browser muestra datos llegando por WebSocket cada 3s.