4.1 KiB
title | description |
---|---|
Traefik Dashboard Documentation | The dashboard shows you the current active routes handled by Traefik Proxy in one central place. Read the technical documentation to learn its operations. |
The Dashboard
See What's Going On {: .subtitle }
The dashboard is the central place that shows you the current active routes handled by Traefik.
The dashboard is available at the same location as the API but on the path /dashboard/
by default.
!!! warning "The trailing slash /
in /dashboard/
is mandatory"
There are 2 ways to configure and access the dashboard:
!!! 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.
Start by enabling the dashboard by using the following option from Traefik's API on the static configuration:
api: {}
[api]
--api=true
Then define a routing configuration on Traefik itself,
with a router attached to the service api@internal
in the
dynamic configuration,
to allow defining:
-
One or more security features through middlewares like authentication (basicAuth, digestAuth, forwardAuth) or allowlisting.
-
A router rule for accessing the dashboard, through Traefik itself (sometimes referred to as "Traefik-ception").
Dashboard Router Rule
As underlined in the documentation for the api.dashboard
option,
the router rule defined for Traefik must match
the path prefixes /api
and /dashboard
.
We recommend using a "Host Based rule" as Host(`traefik.example.com`)
to match everything on the host domain,
or to make sure that the defined rule captures both prefixes:
# The dashboard can be accessed on http://traefik.example.com/dashboard/
rule = "Host(`traefik.example.com`)"
# The dashboard can be accessed on http://example.com/dashboard/ or http://traefik.example.com/dashboard/
rule = "PathPrefix(`/api`) || PathPrefix(`/dashboard`)"
# The dashboard can be accessed on http://traefik.example.com/dashboard/
rule = "Host(`traefik.example.com`) && (PathPrefix(`/api`) || PathPrefix(`/dashboard`))"
??? example "Dashboard Dynamic Configuration Examples" --8<-- "content/operations/include-dashboard-examples.md"
Insecure Mode
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.
It should be used for testing purpose only.
To enable the insecure mode, use the following options from Traefik's API:
api:
insecure: true
[api]
insecure = true
--api.insecure=true
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.
api:
dashboard: false
[api]
dashboard = false
--api.dashboard=false
{!traefik-for-business-applications.md!}