Skip to content

byte4geek/switch-dashboard

v2026.5.2 Feature

This release adds 3 notable features for engineering teams evaluating rollout.

Published 12d Monitoring & Metrics
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

chartjs dark-mode ddmi flask glassmorphism horaco
+3 more
managed-switch network-monitoring sfp-transceiver

Summary

AI summary

Introduces native Docker containerization and unified persistent data mapping for Switch Dashboard.

Full changelog

Release Notes: v2026.5.2 (Docker Deployment & Persistent Storage)

We are proud to release v2026.5.2 of the Switch Dashboard, introducing native Docker & Docker Compose containerization and standardizing persistent data structures for bulletproof, containerized deployments.

🐳 Dockerization & Portability
Official Dockerfile: A lightweight containerized setup built on top of python:3.11-slim that isolates the entire Python environment, reducing host package management overhead.
Unified docker-compose.yml: Simplifies multi-container network configuration. Out-of-the-box support for custom port remappings (e.g., host 8081 to container 8080) to seamlessly coexist with other services on the host.
💾 Unified Persistent Data Mapping
Environment Configuration: Introduced the DASHBOARD_DATA_DIR environment variable to configure the storage directory (defaults to /data inside the container).
Consolidated State Storage: All configuration, telemetry, history, and backup files are saved in the same directory:
config.json (switches)
settings.json (user interface preferences)
notes.json (custom port descriptions)
counters.json (cumulative interface data)
history_hourly.json & history_daily.json (rolling bandwidth metrics)
/backup/ (on-demand binary switch configuration backups)
Host Volume Persistence: Mount a single host folder (e.g. -v ./data:/data) to retain all metrics and user preferences permanently across container restarts, builds, or migrations.
🛡️ Auto-Initialization Safeguard
Empty Directory Detections: When mounting empty folders or fresh volumes, the dashboard automatically detects the absence of configurations and copies the bundled default config.json configuration file.
Resiliency: This prevents container crash loops due to missing files and ensures the user can immediately access the settings page /config to configure their switches via the Web UI.
📦 Robust Absolute Resource Pathing
Absolute Asset Resolution: Refactored Flask's initialization inside app.py to bind both template_folder and static_folder to absolute file pathways resolved dynamically at startup.
Render Guarantee: Eliminates any relative directory mismatch bugs or rendering errors (TemplateNotFound) regardless of the working directory or container runtime layer.
🔬 Service Integration & Compatibility
Standard Deployments Unaffected: The path resolution falls back cleanly to the local directory when DASHBOARD_DATA_DIR is not set, meaning existing virtual env or systemd LXC deployments (like the one running on IP 192.168.1.32) continue to run smoothly with zero adjustments.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track byte4geek/switch-dashboard

Get notified when new releases ship.

Sign up free

About byte4geek/switch-dashboard

All releases →

Related context

Beta — feedback welcome: [email protected]