DevOps

Traefik

A reverse proxy that discovers your containers automatically, so routing updates itself as you deploy.

64.8k stars MIT Go
4.3 / 5 Editor score

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

Ease of setup 3.5
Documentation 4.0
Community & support 4.5
Performance 4.5
Maintenance & activity 5.0

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 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
macOS (Homebrew) brew install traefik
Windows (Chocolatey) choco install traefik

At a glance

CategoryDevOps
LicenceMIT
Written inGo
GitHub stars64,801
Repositorytraefik/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.

← Back to all tools