Go to file
2015-09-19 13:02:59 +02:00
docs config template, backends 2015-09-14 15:38:58 +02:00
middlewares Circuit breaker middleware 2015-09-19 13:02:59 +02:00
providerTemplates refactor rules, api enhancements 2015-09-15 18:35:32 +02:00
script Update building stuff 2015-09-15 23:09:48 +02:00
static static 2015-09-11 16:55:44 +02:00
templates refactor rules, api enhancements 2015-09-15 18:35:32 +02:00
.gitignore Minor corrections 2015-09-16 14:48:35 +02:00
adapters.go Circuit breaker middleware 2015-09-19 13:02:59 +02:00
build.Dockerfile Update building stuff 2015-09-15 23:09:48 +02:00
circle.yml Update circle.yml 2015-09-17 20:54:50 +02:00
configuration.go Format some file using gofmt 2015-09-15 22:32:32 +02:00
docker.go Format some file using gofmt 2015-09-15 22:32:32 +02:00
Dockerfile Update building stuff 2015-09-15 23:09:48 +02:00
file.go Negroni middlewares 2015-09-12 15:10:03 +02:00
file_test.go Update building stuff 2015-09-15 23:09:48 +02:00
generate.go Negroni middlewares 2015-09-12 15:10:03 +02:00
LICENSE.md Licence 2015-09-10 10:02:51 +02:00
Makefile Circuit breaker middleware 2015-09-19 13:02:59 +02:00
marathon.go Circuit breaker middleware 2015-09-19 13:02:59 +02:00
provider.go web provider 2015-09-08 13:33:10 +02:00
README.md git describe --tags --abbrev=0 2015-09-15 00:03:53 +02:00
traefik.go Circuit breaker middleware 2015-09-19 13:02:59 +02:00
traefik.sample.toml refactor rules, api enhancements 2015-09-15 18:35:32 +02:00
traefik.toml refactor rules -> routes, routes -> frontends 2015-09-15 16:09:21 +02:00
web.go note found handler 2015-09-16 22:41:14 +02:00

Træfɪk

Circle CI Forks Stars License

Træfɪk is a modern HTTP reverse proxy and load balancer made to deploy microservices with ease. It supports several backends (Docker, Mesos/Marathon, Consul, Etcd, Rest API, file...) to manage its configuration automatically and dynamically (hot-reload).

Backends

Features

  • No dependency hell, single binary made with go
  • Simple json Rest API
  • Simple TOML file configuration
  • Multiple backends supported: Docker, Mesos/Marathon, Consul, Etcd, and more to come
  • Watchers for backends, can listen change in backends to apply a new configuration automatically
  • Hot-reloading of configuration. No need to restart the process
  • Graceful shutdown http connections during hot-reloads
  • Rest Metrics
  • Tiny docker image included
  • SSL backends support
  • SSL frontend support

Plumbing

  • Oxy: an awsome proxy library made by Mailgun guys
  • Gorilla mux: famous request router
  • Negroni: web middlewares made simple
  • Graceful: graceful shutdown of http.Handler servers

Quick start

  • The simple way: grab the latest binary from the Github releases page and just run it with the sample configuration file:
./traefik traefik.toml
  • Use the tiny Docker image:
docker run -d -p 8080:8080 -p 80:80 -v $PWD/traefik.toml:/traefik.toml emilevauge/traefik

Configuration