traefik/docs/content/getting-started/install-traefik.md

148 lines
4.6 KiB
Markdown
Raw Normal View History

---
title: "Traefik Installation Documentation"
description: "There are several flavors to choose from when installing Traefik Proxy. Get started with Traefik Proxy, and read the technical documentation."
---
2019-07-19 07:24:04 +00:00
# Install Traefik
You can install Traefik with the following flavors:
* [Use the official Docker image](./#use-the-official-docker-image)
2020-03-11 17:28:05 +00:00
* [Use the Helm Chart](./#use-the-helm-chart)
2019-07-19 07:24:04 +00:00
* [Use the binary distribution](./#use-the-binary-distribution)
* [Compile your binary from the sources](./#compile-your-binary-from-the-sources)
## Use the Official Docker Image
2020-10-08 08:38:05 +00:00
Choose one of the [official Docker images](https://hub.docker.com/_/traefik) and run it with one sample configuration file:
2024-01-03 10:12:05 +00:00
* [YAML](https://raw.githubusercontent.com/traefik/traefik/v2.11/traefik.sample.yml)
* [TOML](https://raw.githubusercontent.com/traefik/traefik/v2.11/traefik.sample.toml)
2019-07-19 07:24:04 +00:00
2024-01-02 16:30:06 +00:00
```shell
2019-07-19 07:24:04 +00:00
docker run -d -p 8080:8080 -p 80:80 \
2024-01-03 10:12:05 +00:00
-v $PWD/traefik.yml:/etc/traefik/traefik.yml traefik:v2.11
2019-07-19 07:24:04 +00:00
```
For more details, go to the [Docker provider documentation](../providers/docker.md)
!!! tip
* Prefer a fixed version than the latest that could be an unexpected version.
2024-01-03 10:12:05 +00:00
ex: `traefik:v2.11`
2019-09-23 12:32:04 +00:00
* Docker images are based from the [Alpine Linux Official image](https://hub.docker.com/_/alpine).
2020-02-03 16:18:05 +00:00
* Any orchestrator using docker images can fetch the official Traefik docker image.
2019-07-19 07:24:04 +00:00
## 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:
2022-12-01 09:10:05 +00:00
* Kubernetes 1.16+
* Helm version 3.9+ is [installed](https://helm.sh/docs/intro/install/)
2020-03-11 17:28:05 +00:00
2022-12-01 09:10:05 +00:00
Add Traefik Labs chart repository to Helm:
2020-03-11 17:28:05 +00:00
```bash
2022-11-14 15:04:16 +00:00
helm repo add traefik https://traefik.github.io/charts
2020-03-11 17:28:05 +00:00
```
2020-03-11 17:28:05 +00:00
You can update the chart repository by running:
```bash
2020-03-11 17:28:05 +00:00
helm repo update
```
2024-01-02 16:30:06 +00:00
And install it with the Helm command line:
```bash
2020-03-11 17:28:05 +00:00
helm install traefik traefik/traefik
```
!!! tip "Helm Features"
2020-03-11 17:28:05 +00:00
All [Helm features](https://helm.sh/docs/intro/using_helm/) are supported.
2022-12-01 09:10:05 +00:00
2024-01-02 16:30:06 +00:00
Examples are provided [here](https://github.com/traefik/traefik-helm-chart/blob/master/EXAMPLES.md).
2022-12-01 09:10:05 +00:00
For instance, installing the chart in a dedicated namespace:
```bash tab="Install in a Dedicated Namespace"
2020-03-11 17:28:05 +00:00
kubectl create ns traefik-v2
# Install in the namespace "traefik-v2"
helm install --namespace=traefik-v2 \
2020-03-11 17:28:05 +00:00
traefik traefik/traefik
```
??? example "Installing with Custom Values"
You can customize the installation by specifying custom values,
2020-03-11 17:28:05 +00:00
as with [any helm chart](https://helm.sh/docs/intro/using_helm/#customizing-the-chart-before-installing).
{: #helm-custom-values }
2022-12-01 09:10:05 +00:00
All parameters are documented in the default [`values.yaml`](https://github.com/traefik/traefik-helm-chart/blob/master/traefik/values.yaml).
You can also set Traefik command line flags using `additionalArguments`.
Example of installation with logging set to `DEBUG`:
```bash tab="Using Helm CLI"
helm install --namespace=traefik-v2 \
--set="additionalArguments={--log.level=DEBUG}" \
2020-03-11 17:28:05 +00:00
traefik traefik/traefik
```
```yml tab="With a custom values file"
# File custom-values.yml
2020-03-11 17:28:05 +00:00
## Install with "helm install --values=./custom-values.yml traefik traefik/traefik
additionalArguments:
- "--log.level=DEBUG"
```
2019-07-19 07:24:04 +00:00
## Use the Binary Distribution
Grab the latest binary from the [releases](https://github.com/traefik/traefik/releases) page.
2019-07-19 07:24:04 +00:00
2019-09-23 12:32:04 +00:00
??? info "Check the integrity of the downloaded file"
2019-07-19 07:24:04 +00:00
```bash tab="Linux"
# Compare this value to the one found in traefik-${traefik_version}_checksums.txt
sha256sum ./traefik_${traefik_version}_linux_${arch}.tar.gz
```
```bash tab="macOS"
# Compare this value to the one found in traefik-${traefik_version}_checksums.txt
shasum -a256 ./traefik_${traefik_version}_darwin_amd64.tar.gz
```
```powershell tab="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
```
2019-09-23 12:32:04 +00:00
??? info "Extract the downloaded archive"
2019-07-19 07:24:04 +00:00
```bash tab="Linux"
tar -zxvf traefik_${traefik_version}_linux_${arch}.tar.gz
```
```bash tab="macOS"
tar -zxvf ./traefik_${traefik_version}_darwin_amd64.tar.gz
```
```powershell tab="Windows PowerShell"
Expand-Archive traefik_${traefik_version}_windows_${arch}.zip
```
And run it:
```bash
./traefik --help
```
## Compile your Binary from the Sources
All the details are available in the [Contributing Guide](../contributing/building-testing.md)
2022-09-09 15:17:53 +00:00
{!traefik-for-business-applications.md!}