Official Repository

Last pushed: 14 days ago
Short Description
Træfɪk, a modern reverse proxy
Full Description

Supported tags and respective Dockerfile links

Quick reference

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

Example usage

Grab a sample configuration file and rename it to traefik.toml. Enable docker provider and web UI:

################################################################
# Web configuration backend
################################################################
[web]
address = ":8080"
################################################################
# Docker configuration backend
################################################################
[docker]
domain = "docker.local"
watch = true

Start Træfɪk:

docker run -d -p 8080:8080 -p 80:80 \
-v $PWD/traefik.toml:/etc/traefik/traefik.toml \
-v /var/run/docker.sock:/var/run/docker.sock \
traefik

Start a backend server, named test:

docker run -d --name test emilevauge/whoami

And finally, you can access to your whoami server throught Træfɪk, on the domain name {containerName}.{configuredDomain}:

curl --header 'Host: test.docker.local' 'http://localhost:80/'
Hostname: 117c5530934d
IP: 127.0.0.1
IP: ::1
IP: 172.17.0.3
IP: fe80::42:acff:fe11:3
GET / HTTP/1.1
Host: 172.17.0.3:80
User-Agent: curl/7.35.0
Accept: */*
Accept-Encoding: gzip
X-Forwarded-For: 172.17.0.1
X-Forwarded-Host: 172.17.0.3:80
X-Forwarded-Proto: http
X-Forwarded-Server: f2e05c433120

The web UI http://localhost:8080 will give you an overview of the frontends/backends and also a health dashboard.

Documentation

You can find the complete documentation here.

License

View license information for the software contained in this image.

Docker Pull Command

Comments (3)
dshook
10 months ago

Can we get the 1.0.3 version bump?

Thanks!

jhezjkp
a year ago

docker run -d --name test emilevauge/whoami

should be:

docker run -d -P --name test emilevauge/whoami
ukbtphack1
a year ago

You need to uncomment the

endpoint = "unix:///var/run/docker.sock"

under docker config for this to work