A fast, minimal, and modern web dashboard for managing Traefik's dynamic configuration. Why Use This? If you find Docker labels tedious for setting up Traefik routes but want the simplicity of editing dynamic.yml to add new services, this app is for you. It provides a clean web interface to manage your Traefik dynamic configuration without manually editing YAML files.
Prerequisites
Before using this app, ensure you have:
✅ Traefik installed and running
✅ DNS configured
✅ Domain validation setup (SSL certificates)
Note: This app currently only edits the dynamic.yml file. Your base Traefik configuration should already be working. Quick Start
- Deploy the app with your Traefik dynamic.yml mounted as a volume
- Ensure network connectivity between your services and Traefik (shared Docker network)
- Add a new router through the web interface
- Verify in Traefik's dashboard that the route was created successfully
- Access your service by clicking the hostname in the table to open it in a new tab
Current Status
- ✨ Modern UI: Clean, responsive interface built with TailwindCSS
- 🚀 Fast & Lightweight: Go backend with minimal footprint (~15-20MB container). Atlease thats what claude told me.
- 🔄 Real-time Updates: WebSocket support for live configuration changes
- 📝 Easy Editing: Intuitive GUI for adding/editing routers and services
- 🔌 Swappable Backend: RESTful API design allows easy backend replacement
- 🐳 Docker Ready: Containerized for easy deployment
Environment variables:
DYNAMIC_CONFIG_PATH: Path to dynamic.yml (default:../dynamic/dynamic.yml)PORT: Server port (default:8080)
Add to your Traefik dynamic configuration:
http:
routers:
editor-router:
rule: "Host(`editor.yourdomain.com`)"
entryPoints:
- websecure
service: editor-service
tls:
certResolver: cloudflare
services:
editor-service:
loadBalancer:
servers:
- url: "http://traefik-editor:8080"MIT
Contributions welcome! Looking to
- Add new features to the frontend
- Extended testing and checking
- Extend the configuration options, ability to fully setup traefik end to end.
- Improve the UI/UX
- Optimize CI/CD