HTTP reverse proxy and load balancer that configures routes dynamically from orchestrators and service registries
MIT
- Go
- TypeScript
- JavaScript

About Traefik
Traefik is a modern HTTP reverse proxy and load balancer for microservices. It connects services to the outside world by listening to an orchestrator or service registry API and generating routes dynamically, instead of requiring each path or subdomain to be configured by hand. Manual route configuration is also supported.
It continuously updates configuration without restarts, supports multiple load balancing algorithms, and can provide HTTPS with Let's Encrypt, including wildcard certificates. It supports circuit breakers, retries, WebSocket, HTTP/2, gRPC, a web UI, a REST API, metrics, and access logs in JSON or CLF.
Traefik integrates with Docker, Swarm mode, Kubernetes, Consul, Etcd, Rancher v2, Amazon ECS, and file-based configuration. It is packaged as a single Go binary and as an official Docker image. Releases follow Semantic Versioning, with release candidates before releases and bug-fix versions as needed.
Key features
- Dynamic route generation from orchestrator and registry APIs
- Configuration updates without restarts
- Let's Encrypt HTTPS with wildcard certificate support
- WebSocket, HTTP/2, and gRPC ready
- Metrics, access logs, web UI, and REST API
Details
- First released
- 2015
- Packaging
- Single Go binary · Docker image
- Providers
- Docker · Kubernetes · ECS · File
- HTTPS
- Let's Encrypt · wildcard certificates
- Metrics
- REST · Prometheus · Datadog · Statsd
- Logs
- JSON · CLF access logs
