Commit graph

403 commits

Author SHA1 Message Date
Fernandez Ludovic cf508b6d48 Merge 'v1.4.0-rc4' into master 2017-10-02 17:18:24 +02:00
Chris Aumann 758b7f875b Fix grammar mistake in the kv-config docs 2017-10-02 14:58:04 +02:00
Julien Senon ec5976bbc9 Update gRPC example 2017-10-02 11:34:03 +02:00
Ludovic Fernandez 5cc49e2931 bug command. 2017-10-02 10:32:02 +02:00
Ed Robinson 691a678b19 Improve compression documentation 2017-09-29 10:34:03 +02:00
Timo Reimann 1c98a9ad3e Add request accepting grace period delaying graceful shutdown. 2017-09-26 10:22:03 +02:00
Jiri Tyr dd23ceeead Updating Docker output and curl for sticky sessions 2017-09-22 17:22:03 +02:00
Marco Jantke 837db9a2d9 add json format support for traefik logs 2017-09-21 10:42:02 +02:00
Fernandez Ludovic 2cbf9cae71 Merge tag 'v1.4.0-rc3' into master 2017-09-18 21:52:44 +02:00
Ludovic Fernandez cb05f36976 Manage Headers for the Authentication forwarding. 2017-09-18 17:48:07 +02:00
SALLEYRON Julien 3942f3366d User guide gRPC 2017-09-16 10:56:02 +02:00
Ludovic Fernandez 1a2544610d Enhance web backend documentation 2017-09-15 09:18:03 +02:00
Ludovic Fernandez 5229b7cfba Add forward auth documentation. 2017-09-14 21:26:02 +02:00
Timo Reimann 243b45881d Document custom error page restrictions. 2017-09-14 08:50:02 +02:00
Avi Deitcher 883028d981 Add examples of proxying ping 2017-09-13 15:24:03 +02:00
Ludovic Fernandez bdeb7bfb9f Display Traefik logs in integration test 2017-09-13 10:34:04 +02:00
Timo Reimann 5305a16350 Add guide section on production advice, esp. CPU. 2017-09-12 19:56:04 +02:00
Ludovic Fernandez c7c9349b00 Enhance documentation readability. 2017-09-11 19:10:04 +02:00
Ben Parli d54417acfe Rate limiting for frontends 2017-09-09 13:36:03 +02:00
Michael c19cce69fa Add basic auth for ecs 2017-09-07 17:34:03 +02:00
Michael b705e64a8a Add Basic auth for consul catalog 2017-09-07 15:28:02 +02:00
Chulki Lee 8c5514612f Fix whitespaces 2017-09-07 12:02:03 +02:00
Chulki Lee 924e82ab0c doc: add notes on server urls with path 2017-09-07 11:40:03 +02:00
Keith Bremner adcb99d330 Update cluster.md 2017-09-07 11:16:03 +02:00
Charlie O'Leary a43cf8d2b8 Fix IAM policy sid. 2017-09-07 10:08:04 +02:00
Ludovic Fernandez b0a0e16136 Enhance documentation. 2017-09-05 15:58:03 +02:00
Kyle Bai 732d73dd43 [Docs] Fix invalid service yaml example 2017-09-05 11:42:03 +02:00
Fernandez Ludovic e075dfe911 refactor: re-organize doc. 2017-09-01 20:38:03 +02:00
Fernandez Ludovic 425b53585a doc: fix error pages configuration. 2017-09-01 20:38:03 +02:00
Ludovic Fernandez d5bbb103d4 HTTPS for images, video and links in docs. 2017-09-01 19:44:03 +02:00
Ludovic Fernandez 5c2849ea07 Enhance security headers doc. 2017-09-01 17:44:03 +02:00
Fernandez Ludovic 5b27aba3e1 doc: Material Theme. 2017-08-28 23:02:04 +02:00
Fernandez Ludovic 7c2ba62b56 doc: structural review
- user-guide review.
- add DataDog and StatD configuration.
- sync sample.toml and doc.
- split entry points doc.
- Deprecated.
2017-08-28 23:02:04 +02:00
Julien Maitrehenry 24862402e5 Refactor doc pages 2017-08-28 23:02:04 +02:00
Emile Vauge c8c31aea62 Add proxy protocol 2017-08-25 21:32:03 +02:00
NicoMen 89b0037ec1 Improve Let's Encrypt documentation 2017-08-25 21:10:03 +02:00
Emile Vauge b75fb23887 Update documentation for 1.4 release 2017-08-25 20:40:03 +02:00
Michael f16219f90a Exposed by default feature in Consul Catalog 2017-08-25 17:32:03 +02:00
Michael 086a85d2f0 Enable loadbalancer.sticky for ECS 2017-08-25 11:42:03 +02:00
Luís Duarte 0d56a98836 Add support for Query String filtering 2017-08-24 20:28:03 +02:00
Julien Maitrehenry c1b5b740ff toml page - replace li by table 2017-08-23 19:46:03 +02:00
Timo Reimann 1d2d0cefaa Fix documentation glitches. 2017-08-23 09:22:03 +02:00
Michael 8765494cbd Add support for several ECS backends 2017-08-22 11:46:03 +02:00
Julien Maitrehenry 05665f4eec Add more visibility to docker stack deploy label issue 2017-08-22 10:56:03 +02:00
Emile Vauge 396449c07f Add healthcheck command 2017-08-21 23:18:02 +02:00
Max van der Stam 69d57d602f Add guide for Docker, Traefik & Letsencrypt 2017-08-21 21:20:04 +02:00
Alex Antonov ec3e2c08b8 Support multi-port service routing for containers running on Marathon 2017-08-21 10:46:03 +02:00
Timo Reimann 0367034f93 Fix docs about default namespaces. 2017-08-18 19:18:02 +02:00
Marco Jantke 14a0d66410 Add configurable timeouts and curate default timeout settings 2017-08-18 15:34:04 +02:00
Timo Reimann ea3510d1f3 Add support for readiness checks. 2017-08-18 03:08:03 +02:00
Timo Reimann 3f76f73e8c Mark Marathon and Kubernetes as constraint-supporting. 2017-08-18 02:40:03 +02:00
Emile Vauge 50dd2b8cff Change Traefik intro video 2017-08-11 15:19:36 +02:00
Richard Shepherd 4e5fcac9cb Add log file close and reopen on receipt of SIGUSR1 2017-08-11 12:04:58 +02:00
thomasbach76 7ff6c32452 Add the sprig functions in the template engine 2017-08-10 20:42:39 +02:00
Kirill Orlov 94f922cd28 Added ability to override frontend priority for k8s ingress router 2017-07-29 18:35:23 +02:00
Sascha Grunert 29390a3c4a Update the documentation to use DaemonSet or Deployment (#1735) 2017-07-29 12:50:04 +02:00
Timo Reimann 765c44d77f [kubernetes] Add secrets resource to in-line RBAC spec.
Previously only existed in the Github-hosted example file.
2017-07-27 10:02:02 +02:00
Alex Antonov 69c628b626 DataDog and StatsD Metrics Support
* Added support for DataDog and StatsD monitoring
* Added documentation
2017-07-21 00:26:43 +02:00
Marco Jantke cd28e7b24f fix GraceTimeOut description
Documentation stated that GraceTimeOut describes the timeout between
hot-reloads, which is not the case. GraceTimeOut describes the timeout
Traefik uses to finish serving active requests before stopping only.
2017-07-20 23:42:43 +02:00
Pierre Ugaz 16609cd485 Update docs for dnsimple env vars.
* Lego library uses DNS_OAUTH_TOKEN instead of DNSIMPLE_OAUTH_TOKEN
2017-07-19 18:01:24 +02:00
bitsofinfo 70ab34cfb8 doc change regarding consul SSL
document change to clarify consul ssl, vs consul ssl client certificate security
2017-07-18 17:22:08 +02:00
Timo Reimann d90fa5ab3e [kubernetes] Improve documentation.
- Add details to the labelselector parameter.
- Add section on ExternalNames in the guide.
2017-07-08 12:59:12 +02:00
Christophe Robin 759a19bc4f Add whitelist configuration option for entrypoints
* Add whitelist configuration option for entrypoints
* Add whitelist support to --entrypoint flag
2017-07-08 12:21:14 +02:00
Matt Christiansen 4dfbb6d489 Add marathon label to configure basic auth, similar to docker and rancher providers 2017-07-07 23:36:04 +02:00
Timo Reimann a89eb122a0 Clarify that provider-enabling argument parameters set all defaults. 2017-07-06 17:00:44 +02:00
Fernandez Ludovic eee8ba8a53 doc: Traefik bug command. 2017-07-03 12:42:06 +02:00
Ben Parli 121c057b90 Custom Error Pages (#1675)
* custom error pages
2017-07-01 01:04:18 +02:00
Julien Salleyron 81d011e57d Handle RootCAs Certificate 2017-06-30 14:56:55 +02:00
Richard Shepherd 4128c1ac8d Allow file provider to load config from files in a directory. 2017-06-27 16:58:04 +02:00
Fernandez Ludovic 01bb0a80ab doc: update Rancher documentation. 2017-06-21 14:54:36 +02:00
Martin Baillie 447109e868 Add HTTP HEAD handling to /ping endpoint
Also updates documentation to reflect new method.
2017-06-20 11:40:14 +02:00
bitsofinfo b452695c20 added consul acl token note 2017-06-16 16:31:03 +02:00
Marco Jantke 885b9f371c enable logging to stdout for access logs 2017-06-13 23:43:38 +02:00
Daniel Tomcej f275e4ad3c Create Header Middleware 2017-06-13 12:34:17 +02:00
Alex Antonov 7d6c778211 Enhanced flexibility in Consul Catalog configuration 2017-06-12 21:18:55 +02:00
djalal ad54c5a278 drop "slave" wording for "worker"
Traefik should follow modern IT trends, and use manager/leader/worker/agent, etc. instead of "master/slave".

e.g jenkinsci/jenkins#2007 (https://issues.jenkins-ci.org/browse/JENKINS-27268)

NB: of course, it can only apply where possible, since backends like Mesos should retain their own concepts, and not add more confusion.
2017-06-12 20:07:39 +02:00
Drew Wells 3048509807 enable TLS client forwarding
Copys the incoming TLS client certificate to the outgoing
request. The backend can then use this certificate for
client authentication ie. k8s client cert authentication
2017-06-11 15:24:29 +02:00
Richard Shepherd a9216e24f5 Add JSON as access logging format 2017-06-06 16:26:22 +02:00
Fernandez Ludovic 1e84e77a67 Merge branch 'v1.3' into master 2017-06-01 20:53:02 +02:00
Maxime Guyot 1db22a6e63 Fix capitalization of PathPrefixStrip in kubernetes doc 2017-06-01 20:40:28 +02:00
Fernandez Ludovic 8ad31d6eb4 Merge remote-tracking branch 'upstream/v1.3' into merge-v1_3 2017-05-22 11:38:28 +02:00
Brian Akins 13e8a875cf Allow overriding port for backend healthchecks 2017-05-19 17:48:16 +02:00
Ed Robinson c7281df230 Update usage of .local with .minikube in k8s docs
Fixes #1521
2017-05-19 17:02:39 +02:00
MaZderMind 5f0b215e90 IP Whitelists for Frontend (with Docker- & Kubernetes-Provider Support) 2017-05-19 15:19:29 +02:00
Ed Robinson c1220b8765 Re Orginise k8s docs to make 1.6 usage easier
* Adds some raw.githubusercontent.com links to the kubectl examples to
make following along at home simpler.
* Dedupe the config for rbac so it can just be ommited if not needed.
2017-05-17 15:58:54 +02:00
Gaetan Semet 0b414ed482
Add Marathon guide
Copy/pasted from very comprehensive slack response from @ttr
https://traefik.slack.com/archives/C0CDT22PJ/p1494347929571784?thread_ts=1494339388.375916&cid=C0CDT22PJ

Signed-off-by: Gaetan Semet <gaetan@xeberon.net>
2017-05-17 14:59:28 +02:00
Emile Vauge f8ea19d29c
Merge branch 'v1.3' into merge-v1.3.0-rc2-master 2017-05-17 11:44:53 +02:00
Antoine Aumjaud 5e14f20786 Update documentation
fix some "errors"
2017-05-17 09:45:36 +02:00
Fernandez Ludovic 12fa144f2f doc: Traefik cluster in beta. 2017-05-16 15:28:18 +02:00
Alex Antonov 3f68e382fd Fixed ReplacePath rule executing out of order, when combined with PathPrefixStrip #1569 2017-05-15 10:08:18 -05:00
Fernandez Ludovic 0babc7bb64 doc(CI): Add SemaphoreCI badge. 2017-05-12 18:46:02 +02:00
Youcef Yekhlef 8de107866f feat(rancher): added constraint management for rancher provider 2017-05-03 13:48:44 +02:00
Fernandez Ludovic 420a6db3b4 doc: add k8s basic auth. 2017-05-03 13:18:40 +02:00
Fernandez Ludovic 4c4b05d024 refactor: small documentation review 2017-05-01 18:09:22 +02:00
Matthew Kelch 44db6e9290 mprove Rancher provider functionality:
- Improves default filtering behavior to filter by container health/healthState
- Optionally allows filtering by service health/healthState
- Allows configuration of refresh interval
2017-04-29 15:37:54 -04:00
Timo Reimann 25345427c3 Add global health check interval parameter.
The new parameter allows to set a health check interval valid for all
backends. Custom values set per provider may override the global one.
2017-04-28 20:51:29 +02:00
Timo Reimann d57f83c31c Make Traefik health checks label-configurable with Marathon.
For the two existing health check parameters (path and interval), we add
support for Marathon labels.

Changes in detail:

- Extend the Marathon provider and template.
- Refactor Server.loadConfig to reduce duplication.
- Refactor the healthcheck package slightly to accommodate the changes
  and allow extending by future parameters.
- Update documentation.
2017-04-28 18:17:25 +02:00
Stéphane Seguin bf3673879f Fix regex with PathStrip 2017-04-28 17:33:14 +02:00
Tristan Colgate de6d771bc2 Add libkv Username and Password 2017-04-28 16:28:57 +02:00
Manuel Laufenberg a0c3d6a421 make docs more clear about how to work with the current api 2017-04-28 10:21:18 +02:00
ssttevee aa8375e82b added path replacement rule 2017-04-26 23:33:32 -07:00
Diego de Oliveira 592a12dca2 Fix unsound behavior
The IP-Per-Task feature changed the behavior for
clients without this configuration (using the task IP instead
of task hostname). This patch make the new behavior available
just for Mesos installation with IP-Per-Task enabled. It also
make it possible to force the use of task's hostname.
2017-04-26 11:35:30 +02:00
Emile Vauge 19a7d22eef
License 2017, Træfɪk => Træfik
Signed-off-by: Emile Vauge <emile@vauge.com>
2017-04-24 15:12:44 +02:00
Fernandez Ludovic 4e81d41d06 doc: update web ui documentation
- update web ui dev documentation
- update Dashboard screenshot.
2017-04-24 10:04:58 +02:00
Benjamin Gandon 378a34c454 Fix error in documentation for Docker labels 2017-04-23 01:58:26 +02:00
Timo Reimann 051f0c6855 Improve documentation for frontend rules.
Includes guidelines on proper usage of the more complex path matchers.
2017-04-21 00:30:27 +02:00
Timo Reimann 22ac60205a Mention Traefik pronunciation in docs too.
Also replace Træfɪk with Træfik.
2017-04-20 12:08:12 +02:00
Manuel Laufenberg 8a892b21e1 Add Basic Auth per Frontend for Rancher & Docker Dynamic Provider 2017-04-19 21:05:43 +02:00
Maxime Cottret fc3cc9a919 Add documentation for k8s RBAC configuration 2017-04-13 00:27:16 +02:00
Sebastian a73fee50dc
Docker: Added warning if network could not be found (#1310)
* Added warning if network could not be found

* Removed regex import from master

* Corrected wrong function call
2017-04-11 22:36:55 +02:00
Emile Vauge 736f9b30ef
Fix default config in generic Mesos provider
Signed-off-by: Emile Vauge <emile@vauge.com>
2017-04-11 22:36:55 +02:00
Timo Reimann a507cb4835
Rename health check URL parameter to path.
Also improve documentation.
2017-04-11 22:36:55 +02:00
Timo Reimann ec7ba15955
Docs: Update default value for DefaultMaxIdleConnsPerHost. 2017-04-11 22:36:55 +02:00
Stéphane Seguin e38bf0accb
Add documentation about k8s chart 2017-04-06 21:52:39 +02:00
Ben Parli c9d23494b9 Add IdleConnTimeout to Traefik's http.server settings (#1340)
* Add IdleTimeout setting to http.server

Without such a timeout there is a risk of resource leakage from piling up connections, particularly when exposing Traefik to the Internet.

Set the default to be 180 seconds

* Add IdleConnTimeout to Traefik's http.server settings

Without enforcing a timeout Traefik is susceptible to resource leakage, particularly when deployed as a public facing proxy exposed to the Internet.

Set the default to be 180 seconds

* tweak

* Update configuration.go

* add some documentation for the idletimeout setting

* need to cast idletimeout

* update doc to refect format specifics
2017-04-04 11:36:23 +02:00
Timo Reimann 056fe9ac0a Switch duration configuration parameters over to flaeg.Duration. 2017-04-03 18:36:23 +02:00
tcoupin 5c16860486
Use service.project.domain instead of project-service.domain 2017-04-03 11:00:04 +02:00
tcoupin 0a7f9b5a71
Use docker-compose labels for frontend and backend names 2017-04-03 11:00:04 +02:00
Hans Kristian Flaatten 9281f4fbbc Make toml Bucket array homogeneous 2017-03-31 14:01:56 +02:00
tcoupin c5125cee71 Add path parameter for web provider 2017-03-24 17:51:53 +01:00
Samuel ROZE 9ab8e08d59
s/Hopefully/Fortunately/ 2017-03-21 22:44:54 +01:00
Taylor Skinner 72e35af39f add dynamo
Signed-off-by: Taylor Skinner <tskinn12@gmail.com>

add some comments

Signed-off-by: Taylor Skinner <tskinn12@gmail.com>

update readmes

make test runnable

Signed-off-by: Taylor Skinner <tskinn12@gmail.com>

make test

squash! add dynamo

add glide.lock

format imports

gofmt

update glide.lock

fixes for review

golint

clean up and reorganize tests

add dynamodb integration test

remove default region. clean up tests. consistent docs

forgot the region is required

DRY

make validate

update readme and commit dependencies
2017-03-16 10:12:26 -06:00
Florent BENOIT 1158eba7ac Adding docker labels traefik.<servicename>.* properties like
- traefik.mycustomservice.port=443
  -  traefik.mycustomservice.frontend.rule=Path:/mycustomservice
   - traefik.anothercustomservice.port=8080
  -  traefik.anothercustomservice.frontend.rule=Path:/anotherservice

all traffic to frontend /mycustomservice is redirected to the port 443 of the container while using /anotherservice will redirect to the port 8080 of the docker container

More documentation in the docs/toml.md file

Change-Id: Ifaa3bb00ef0a0f38aa189e0ca1586fde8c5ed862
Signed-off-by: Florent BENOIT <fbenoit@codenvy.com>
2017-03-14 08:45:47 +01:00
Kent Rancourt 7357417f48 Allow usersFile to be specified for basic or digest auth 2017-03-09 20:24:44 -05:00
Timo Reimann 920b5bb15d Support cluster-external Kubernetes client. (#1159)
Detect whether in-cluster or cluster-external Kubernetes client should
be used based on the KUBERNETES_SERVICE_{HOST,PORT} environment
variables.

Adds bearer token and CA certificate file path parameters.
2017-03-07 13:09:11 +01:00
Manuel Laufenberg eb1ffae01b
Small fixes and improvments 2017-03-06 17:45:58 +01:00
Julien Salleyron 14fd53c915
Add doc 2017-03-06 17:45:58 +01:00
Rickard von Essen 5e8805f24d
ECS: Docs - info about cred. resolution and required access policies
Added information about how AWS credentials are resolved and which
access rights is needed the Traefik ECS provider.
2017-03-06 17:45:58 +01:00
Regner Blok-Andersen f530284031 Adding support for Traefik to respect the K8s ingress class annotation (#1182) 2017-03-03 20:30:22 +01:00
Timo Reimann 7d20871f0d Fix typos. 2017-03-03 00:27:33 +01:00
Timo Reimann 6942b063ee Motivate and explain regular expression rules. 2017-03-02 23:00:25 +01:00
Timo Reimann e56bd27c1e Remove blank space. 2017-03-02 23:00:25 +01:00
Regner Blok-Andersen 49466d0d14 Added documentation about defining the passing of host header globaly 2017-02-15 16:11:31 -08:00
Regner Blok-Andersen 66cc9a075c First pass of documentation for passHostHeader kubernetes annotation 2017-02-15 13:37:47 -08:00
Mike Foley e0a4c58081
Added service name to dockerData struct.
In Swarm mode with with Docker Swarm’s Load Balancer disabled (traefik.backend.loadbalancer.swarm=false)
service name will be the name of the docker service and name will be the container task name
(e.g. whoami0.1).  When generating backend and fronted rules, we will use service name instead of name if a
rule is not provided.

Initialize dockerData.ServiceName to dockerData.Name to support non-swarm mode.
2017-02-06 14:44:25 +01:00
Mike Foley d2b47a5681
Support sticky sessions under SWARM Mode.
SWARM Mode has it's own built in Load balancer, so if we want to leverage sticky sessions,
 or if we would just prefer to bypass it and go directly to the containers (aka tasks), via
	--label traefik.backend.disable.swarm.loadbalancer=true
 then we need to let Traefik know about the underlying tasks and register them as
 services within it's backend.
2017-02-06 14:44:25 +01:00
Luke Petre 8d3c77a0b9 Add an ECS provider 2017-02-05 18:09:30 +00:00
Brian Akins 225dbcce0a Allow setting circuitbreaker expression via Kubernetes annotation (#1056) 2017-02-03 17:47:48 +01:00
Bilal Amarni 93ce747205 [doc] typo fixes for kubernetes user guide 2017-02-03 11:08:38 +01:00
Brian Akins 490427f94d
Allow setting load balancer method and sticky using service annotations 2017-02-02 14:03:39 +00:00
Skip Baney 18e9064d25
Add link to GH issue for docker stack deploy 2017-01-24 14:49:28 +01:00
Alberto fa1090b6eb Improving instrumentation. (#1042) 2017-01-17 18:14:13 +01:00
enxebre 175659a3dd Support for Metrics and Prometheus. 2017-01-16 15:00:16 +01:00
j0hnsmith bfc7b3d183 Add multiple values for one rule to docs 2016-12-30 22:29:37 +01:00
Bilal Amarni e4952cd145 [doc] few tweaks on the basics page 2016-12-30 16:49:13 +01:00
Emile Vauge 6ca142bf20 Merge branch 'master' into addprefix 2016-12-20 22:26:04 +01:00
Rodrigo Menezes 6b20d2a5f3 toml zookeeper doc fix (#948)
Having that slash there causes traefik to be able to get keys from ZK
2016-12-20 22:25:50 +01:00
Julien Salleyron a4034ce1e2 Add some docs 2016-12-19 17:17:24 +01:00
Ian 94bb7a1435 Add ability to set authenticated user in request header (#889)
* Add ability to set authenticated user in request header

Some web applications provide the ability to authorize users based on
the authenticated from Basic Auth. This patch provides a way to set a
key to which the authenticated user can be set in the Header.

For example, if I set `HeaderValue = "X-WebAuth-User"` and authenticate,
my application will be able to read my user name from that header and
provide me with the proper access.

This fixes #802
2016-12-16 16:42:51 +01:00
Frank Sachsenheim fe2d4e0d38 Updates index.md 'Test it!' section
adapted to current schema for compose files
uses networks as necessary in a real world usage
2016-12-08 17:01:49 +01:00