Go to file
Vincent Demeester 0ea80582d2 Update building stuff
- Add a Makefile with common targets (binary, test, validate, ..)
- Use docker to build it (isolated)

And update circleci to work with the new Makefile..

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-09-15 23:09:48 +02:00
docs config template, backends 2015-09-14 15:38:58 +02:00
middlewares Format some file using gofmt 2015-09-15 22:32:32 +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 Update building stuff 2015-09-15 23:09:48 +02:00
build.Dockerfile Update building stuff 2015-09-15 23:09:48 +02:00
circle.yml Update building stuff 2015-09-15 23:09:48 +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 Update building stuff 2015-09-15 23:09:48 +02:00
marathon.go Negroni middlewares 2015-09-12 15:10:03 +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 Update building stuff 2015-09-15 23:09:48 +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 refactor rules, api enhancements 2015-09-15 18:41:55 +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