diff --git a/docs/content/getting-started/concepts.md b/docs/content/getting-started/concepts.md index ea0119837..2e99906a3 100644 --- a/docs/content/getting-started/concepts.md +++ b/docs/content/getting-started/concepts.md @@ -1,19 +1,34 @@ --- -title: "Traefik Concepts Documentation" -description: "Get started with Traefik Proxy. Read the technical documentation for an introduction into the key concepts behind our open source edge router." +title: Concepts +description: Traefik - base concepts and main features --- # Concepts -Everything You Need to Know -{: .subtitle } +This page explains the base concepts of Traefik. + +--- + +## Introduction + +Traefik is based on the concept of EntryPoints, Routers, Middelwares and Services. + +The main features include dynamic configuration, automatic service discovery, and support for multiple backends and protocols. + +1. [EntryPoints](../routing/entrypoints.md "Link to docs about EntryPoints"): EntryPoints are the network entry points into Traefik. They define the port which will receive the packets, and whether to listen for TCP or UDP. + +2. [Routers](../routing/routers/index.md "Link to docs about routers"): A router is in charge of connecting incoming requests to the services that can handle them. + +3. [Middlewares](../middlewares/overview.md "Link to docs about middlewares"): Attached to the routers, middlewares can modify the requests or responses before they are sent to your service + +4. [Services](../routing/services/index.md "Link to docs about services"): Services are responsible for configuring how to reach the actual services that will eventually handle the incoming requests. ## Edge Router -Traefik is an _Edge Router_, it means that it's the door to your platform, and that it intercepts and routes every incoming request: -it knows all the logic and every rule that determine which services handle which requests (based on the [path](../routing/routers/index.md#rule), the [host](../routing/routers/index.md#rule), [headers](../routing/routers/index.md#rule), [and so on](../routing/routers/index.md#rule) ...). +Traefik is an *Edge Router*, it means that it's the door to your platform, and that it intercepts and routes every incoming request: +it knows all the logic and every [rule](../routing/routers/index.md#rule "Link to docs about routing rules") that determine which services handle which requests (based on the *path*, the *host*, *headers*, etc.). -![The Door to Your Infrastructure](../assets/img/traefik-concepts-1.png) +![The Door to Your Infrastructure](../assets/img/traefik-concepts-1.png "Picture explaining the infrastructure") ## Auto Service Discovery @@ -21,7 +36,7 @@ Where traditionally edge routers (or reverse proxies) need a configuration file Deploying your services, you attach information that tells Traefik the characteristics of the requests the services can handle. -![Decentralized Configuration](../assets/img/traefik-concepts-2.png) +![Decentralized Configuration](../assets/img/traefik-concepts-2.png "Picture about Decentralized Configuration") It means that when a service is deployed, Traefik detects it immediately and updates the routing rules in real time. Similarly, when a service is removed from the infrastructure, the corresponding route is deleted accordingly. @@ -30,14 +45,16 @@ You no longer need to create and synchronize configuration files cluttered with !!! info "Many different rules" - In the example above, we used the request [path](../routing/routers/index.md#rule) to determine which service was in charge, but of course you can use many other different [rules](../routing/routers/index.md#rule). + In the example above, we used the request [path rule](../routing/routers/index.md#rule "Link to docs about routing rules") to determine which service was in charge. + Certainly, you can use many other different [rules](../routing/routers/index.md#rule "Link to docs about routing rules"). !!! info "Updating the requests" - In the [middleware](../middlewares/overview.md) section, you can learn about how to update the requests before forwarding them to the services. + In the [middleware](../middlewares/overview.md "Link to middleware documentation") section, you can learn about how to update the requests before forwarding them to the services. !!! question "How does Traefik discover the services?" - Traefik is able to use your cluster API to discover the services and read the attached information. In Traefik, these connectors are called [providers](../providers/overview.md) because they _provide_ the configuration to Traefik. To learn more about them, read the [provider overview](../providers/overview.md) section. + Traefik is able to use your cluster API to discover the services and read the attached information. + In Traefik, these connectors are called [providers](../providers/overview.md "Link to overview about Traefik providers") because they *provide* the configuration to Traefik. {!traefik-for-business-applications.md!}