2022-04-15 13:44:08 +00:00
---
title: "Traefik Dashboard Documentation"
description: "The dashboard shows you the current active routes handled by Traefik Proxy in one central place. Read the technical documentation to learn its operations."
---
2019-02-26 13:50:07 +00:00
# The Dashboard
See What's Going On
{: .subtitle }
2019-10-07 12:38:06 +00:00
The dashboard is the central place that shows you the current active routes handled by Traefik.
2019-02-26 13:50:07 +00:00
< figure >
2019-09-10 12:40:05 +00:00
< img src = "../../assets/img/webui-dashboard.png" alt = "Dashboard - Providers" / >
< figcaption > The dashboard in action< / figcaption >
2019-02-26 13:50:07 +00:00
< / figure >
2019-10-07 12:38:06 +00:00
The dashboard is available at the same location as the [API ](./api.md ) but on the path `/dashboard/` by default.
2019-02-26 13:50:07 +00:00
2019-10-07 12:38:06 +00:00
!!! warning "The trailing slash `/` in `/dashboard/` is mandatory"
2019-02-26 13:50:07 +00:00
2019-10-07 12:38:06 +00:00
There are 2 ways to configure and access the dashboard:
- [Secure mode (Recommended) ](#secure-mode )
- [Insecure mode ](#insecure-mode )
!!! note ""
There is also a redirect of the path `/` to the path `/dashboard/` ,
but one should not rely on that property as it is bound to change,
and it might make for confusing routing rules anyway.
## Secure Mode
This is the **recommended** method.
2019-10-25 15:32:04 +00:00
Start by enabling the dashboard by using the following option from [Traefik's API ](./api.md )
on the [static configuration ](../getting-started/configuration-overview.md#the-static-configuration ):
2019-02-26 13:50:07 +00:00
2021-06-18 22:08:08 +00:00
```yaml tab="File (YAML)"
2024-11-14 10:14:04 +00:00
api: {}
2019-07-22 07:58:04 +00:00
```
2019-02-26 13:50:07 +00:00
2021-06-18 22:08:08 +00:00
```toml tab="File (TOML)"
[api]
2019-07-22 07:58:04 +00:00
```
2019-02-26 13:50:07 +00:00
2019-07-22 07:58:04 +00:00
```bash tab="CLI"
2024-11-14 10:14:04 +00:00
--api=true
2019-07-22 07:58:04 +00:00
```
2019-02-26 13:50:07 +00:00
2019-11-12 14:40:05 +00:00
Then define a routing configuration on Traefik itself,
with a router attached to the service `api@internal` in the
2019-10-25 15:32:04 +00:00
[dynamic configuration ](../getting-started/configuration-overview.md#the-dynamic-configuration ),
to allow defining:
2019-10-07 12:38:06 +00:00
2019-10-25 15:32:04 +00:00
- One or more security features through [middlewares ](../middlewares/overview.md )
2024-01-02 16:30:06 +00:00
like authentication ([basicAuth](../middlewares/http/basicauth.md), [digestAuth ](../middlewares/http/digestauth.md ),
2021-06-11 13:30:05 +00:00
[forwardAuth ](../middlewares/http/forwardauth.md )) or [whitelisting ](../middlewares/http/ipwhitelist.md ).
2019-10-07 12:38:06 +00:00
2019-10-25 15:32:04 +00:00
- A [router rule ](#dashboard-router-rule ) for accessing the dashboard,
2024-01-02 16:30:06 +00:00
through Traefik itself (sometimes referred to as "Traefik-ception").
2019-10-07 12:38:06 +00:00
2019-10-25 15:32:04 +00:00
### Dashboard Router Rule
As underlined in the [documentation for the `api.dashboard` option ](./api.md#dashboard ),
the [router rule ](../routing/routers/index.md#rule ) defined for Traefik must match
the path prefixes `/api` and `/dashboard` .
2024-01-02 16:30:06 +00:00
We recommend using a "Host Based rule" as ```Host(`traefik.example.com`)``` to match everything on the host domain,
2019-10-25 15:32:04 +00:00
or to make sure that the defined rule captures both prefixes:
```bash tab="Host Rule"
2020-03-13 21:50:05 +00:00
# The dashboard can be accessed on http://traefik.example.com/dashboard/
rule = "Host(`traefik.example.com`)"
2019-10-25 15:32:04 +00:00
```
```bash tab="Path Prefix Rule"
2020-03-13 21:50:05 +00:00
# The dashboard can be accessed on http://example.com/dashboard/ or http://traefik.example.com/dashboard/
2022-10-18 13:38:12 +00:00
rule = "PathPrefix(`/api`, `/dashboard` )"
2019-10-25 15:32:04 +00:00
```
```bash tab="Combination of Rules"
2020-03-13 21:50:05 +00:00
# The dashboard can be accessed on http://traefik.example.com/dashboard/
2022-10-18 13:38:12 +00:00
rule = "Host(`traefik.example.com`) && PathPrefix(`/api`, `/dashboard` )"
2019-10-25 15:32:04 +00:00
```
2019-10-07 12:38:06 +00:00
2020-07-08 07:26:03 +00:00
??? example "Dashboard Dynamic Configuration Examples"
--8< -- " content / operations / include-dashboard-examples . md "
2019-10-07 12:38:06 +00:00
## Insecure Mode
2024-11-14 10:14:04 +00:00
When _insecure_ mode is enabled, one can access the dashboard on the `traefik` port (default: `8080` ) of the Traefik instance,
at the following URL: `http://<Traefik IP>:8080/dashboard/` (trailing slash is mandatory).
This mode is **not** recommended because it does not allow security features.
For example, it is not possible to add an authentication middleware with this mode.
2019-10-07 12:38:06 +00:00
2024-11-14 10:14:04 +00:00
It should be used for testing purpose **only** .
To enable the _insecure_ mode, use the following options from [Traefik's API ](./api.md#insecure ):
2019-10-07 12:38:06 +00:00
```yaml tab="File (YAML)"
api:
insecure: true
```
2021-06-18 22:08:08 +00:00
```toml tab="File (TOML)"
[api]
insecure = true
```
2019-10-07 12:38:06 +00:00
```bash tab="CLI"
2024-11-14 10:14:04 +00:00
--api.insecure=true
2019-10-07 12:38:06 +00:00
```
2019-02-26 13:50:07 +00:00
2024-11-14 10:14:04 +00:00
## Disable The Dashboard
By default, the dashboard is enabled when the API is enabled.
If necessary, the dashboard can be disabled by using the following option.
```yaml tab="File (YAML)"
api:
dashboard: false
```
```toml tab="File (TOML)"
[api]
dashboard = false
```
```bash tab="CLI"
--api.dashboard=false
```
2022-09-09 15:17:53 +00:00
{!traefik-for-business-applications.md!}