Traefik
A reverse proxy that discovers your containers automatically, so routing updates itself as you deploy.
What it is
Traefik is a reverse proxy and load balancer designed around dynamic environments. Instead of a config file listing every backend, it connects to your orchestrator — Docker, Kubernetes, Nomad, or a service registry like Consul — and watches for containers appearing and disappearing.
When a container starts, Traefik notices the labels or annotations on it, builds the route, and begins sending traffic. When it stops, the route goes away. You never reload the proxy, and there is no window where the config file is out of date with what is actually running.
It also handles automatic TLS through Let us Encrypt, middleware for auth, rate limiting, headers and circuit breaking, and a live dashboard that shows the routes it has discovered. It is the piece that makes a swarm of small services reachable without hand-maintaining an nginx config per service.
Why we recommend it
Routing follows your deployments
Adding a service is a matter of labelling the container and starting it. There is no second place to update and nothing to reload, which removes the most common cause of a deploy going to the wrong backend.
Built for containers from the start
The provider model means Docker and Kubernetes are first-class, not bolted on through templates. If your infrastructure is already declarative, the proxy fits the same model.
Middleware is composable
Authentication, compression, rate limiting, header rewriting and circuit breakers are attached per-route as named middleware. That keeps cross-cutting behaviour out of application code.
You can see the real routing table
The dashboard lists every router it has discovered and where each one points. When traffic goes somewhere unexpected, the answer is one screen away.
How it scores
These are our editorial ratings, not benchmark results. We score on how the project behaves in practice — how long it takes to get running, how good the documentation is, how responsive the maintainers are, and how well it holds up over time. The licence and star count above are read from GitHub and are a snapshot.
Pros and cons
Strengths
- Service discovery from Docker, Kubernetes, Nomad and Consul labels
- Automatic TLS via Let us Encrypt
- Composable middleware for auth, rate limits and header handling
- Live dashboard showing discovered routes and services
- MIT licensed with a large contributor base
Trade-offs
- The learning curve is steep — providers, routers, services and middlewares are separate concepts you must understand before anything works
- Debugging a misconfigured label often means reading debug logs rather than a clear error
- Documentation is thorough but patchy in places, and examples frequently assume a specific version
- Heavier to reason about than a static nginx config for a single-service setup
How to get it
Direct download
Clicking a button downloads the file straight from the project's release — you stay on this page.
One-line install
Prefer the terminal? Copy a command and you are done.
docker run -d --name traefik -p 8081:80 -p 8080:8080 -v /var/run/docker.sock:/var/run/docker.sock traefik:v3.0 --api.insecure=true --providers.docker
brew install traefik
choco install traefik
Source and documentation
At a glance
| Category | DevOps |
|---|---|
| Licence | MIT |
| Written in | Go |
| GitHub stars | 64,801 |
| Repository | traefik/traefik |
Licence and star count were read from the GitHub API when this page was generated and are a snapshot. Check the repository for the current figure and the authoritative licence text.
Other DevOps tools
We are not affiliated with Traefik or its maintainers. We list it because it is genuinely useful and genuinely free. If you plan to build a commercial product on top of it, read the licence on the repository first.