Install Traefik
You can install Traefik with the following flavors:
- Use the official Docker image
- Use the Helm Chart
- Use the binary distribution
- Compile your binary from the sources
Use the Official Docker Image
Choose one of the official Docker images and run it with one sample configuration file:
docker run -d -p 8080:8080 -p 80:80 \
-v $PWD/traefik.yml:/etc/traefik/traefik.yml traefik:v3.2
For more details, go to the Docker provider documentation
Tip
- Prefer a fixed version than the latest that could be an unexpected version. ex:
traefik:v3.2
- Docker images are based from the Alpine Linux Official image.
- Any orchestrator using docker images can fetch the official Traefik docker image.
Use the Helm Chart
Traefik can be installed in Kubernetes using the Helm chart from https://github.com/traefik/traefik-helm-chart.
Ensure that the following requirements are met:
- Kubernetes 1.22+
- Helm version 3.9+ is installed
Add Traefik Labs chart repository to Helm:
helm repo add traefik https://traefik.github.io/charts
You can update the chart repository by running:
helm repo update
And install it with the Helm command line:
helm install traefik traefik/traefik
Helm Features
All Helm features are supported.
Examples are provided here.
For instance, installing the chart in a dedicated namespace:
Install in a Dedicated Namespace
kubectl create ns traefik-v2
# Install in the namespace "traefik-v2"
helm install --namespace=traefik-v2 \
traefik traefik/traefik
Installing with Custom Values
You can customize the installation by specifying custom values, as with any helm chart.
All parameters are documented in the default values.yaml.
You can also set Traefik command line flags using additionalArguments
. Example of installation with logging set to DEBUG
:
Using Helm CLI
helm install --namespace=traefik-v2 \
--set="additionalArguments={--log.level=DEBUG}" \
traefik traefik/traefik
With a custom values file
# File custom-values.yml
## Install with "helm install --values=./custom-values.yml traefik traefik/traefik
additionalArguments:
- "--log.level=DEBUG"
Use the Binary Distribution
Grab the latest binary from the releases page.
Check the integrity of the downloaded file
Linux
# Compare this value to the one found in traefik-${traefik_version}_checksums.txt
sha256sum ./traefik_${traefik_version}_linux_${arch}.tar.gz
macOS
# Compare this value to the one found in traefik-${traefik_version}_checksums.txt
shasum -a256 ./traefik_${traefik_version}_darwin_amd64.tar.gz
Windows PowerShell
# Compare this value to the one found in traefik-${traefik_version}_checksums.txt
Get-FileHash ./traefik_${traefik_version}_windows_${arch}.zip -Algorithm SHA256
Extract the downloaded archive
Linux
tar -zxvf traefik_${traefik_version}_linux_${arch}.tar.gz
macOS
tar -zxvf ./traefik_${traefik_version}_darwin_amd64.tar.gz
Windows PowerShell
Expand-Archive traefik_${traefik_version}_windows_${arch}.zip
And run it:
./traefik --help
Compile your Binary from the Sources
All the details are available in the Contributing Guide
Using Traefik OSS in Production?
If you are using Traefik at work, consider adding enterprise-grade API gateway capabilities or commercial support for Traefik OSS.
Adding API Gateway capabilities to Traefik OSS is fast and seamless. There’s no rip and replace and all configurations remain intact. See it in action via this short video.