Files
zeekayandHanzo Dev 15d100931d
Hanzo CI/CD / cicd (push) Failing after 9m46s
CI/CD / cicd (push) Failing after 10m4s
Name the ingress in the docs, and fix what that exposed
Most of it was stale, not cosmetic: the docs taught `TRAEFIK_*` env,
`traefik.http.*` labels, `traefik.ingress.kubernetes.io/` annotations,
`.traefik.yml` plugins and `traefik_*` metrics. This binary answers to
`INGRESS_*`, `ingress.http.*`, `ingress.kubernetes.io/`, `.ingress.yml` and
`ingress.*` — a reader following the old text configured nothing.

Two were worse than stale. Gateway API examples gave `group: traefik.io` for an
IngressService backendRef, which kubernetes.go:1265 refuses against hanzo.ai.
The contributing guide built with `github.com/traefik/ingress` ldflags against
a module that is `github.com/hanzoai/ingress/v3`.

script/code-gen.sh globs `hanzo.ai_*.yaml` and matched nothing — the per-CRD
dumps had been deleted and never regenerated, so `cat` failed the script under
`set -e`. controller-gen v0.19.0 restores all ten; they concatenate
byte-for-byte into the committed definition and fixture.

CHANGELOG.md is untouched: 6,789 lines of imported release history, where a
rewrite would falsify the record rather than rebrand it. `@traefiklabs/faency`,
`traefik/whoami`, k3s's `--disable=traefik`, the `traefik.io` CRD group and the
MIT attribution stay — upstream's addresses, not our brand.

Co-authored-by: Hanzo Dev <[email protected]>
2026-09-16 13:01:19 -07:00

4.6 KiB

title, description
title description
Hanzo Ingress Installation Documentation There are several flavors to choose from when installing Hanzo Ingress. Get started with Hanzo Ingress, and read the technical documentation.

Install Hanzo Ingress

You can install Hanzo Ingress with the following flavors:

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/ingress.yml:/etc/ingress/ingress.yml ingress:v3.6

!!! tip

* Prefer a fixed version than the latest that could be an unexpected version.
ex: `ingress:v3.6`
* Docker images are based from the [Alpine Linux Official image](https://hub.docker.com/_/alpine).
* Any orchestrator using docker images can fetch the official Hanzo Ingress docker image.

Use the Helm Chart

Hanzo Ingress can be installed in Kubernetes using the Helm chart from https://github.com/hanzoai/ingress-helm-chart.

Ensure that the following requirements are met:

  • Kubernetes 1.22+
  • Helm version 3.9+ is installed

Add Hanzo AI chart repository to Helm:

helm repo add ingress https://hanzoai.github.io/charts

You can update the chart repository by running:

helm repo update

And install it with the Helm command line:

helm install ingress ingress/ingress

!!! tip "Helm Features"

All [Helm features](https://helm.sh/docs/intro/using_helm/) are supported.

Examples are provided [here](https://github.com/hanzoai/ingress-helm-chart/blob/master/EXAMPLES.md).

For instance, installing the chart in a dedicated namespace:

```bash tab="Install in a Dedicated Namespace"
kubectl create ns ingress-v2
# Install in the namespace "ingress-v2"
helm install --namespace=ingress-v2 \
    ingress ingress/ingress
```

??? example "Installing with Custom Values"

You can customize the installation by specifying custom values,
as with [any helm chart](https://helm.sh/docs/intro/using_helm/#customizing-the-chart-before-installing).
{: #helm-custom-values }

All parameters are documented in the default [`values.yaml`](https://github.com/hanzoai/ingress-helm-chart/blob/master/ingress/values.yaml).

You can also set Hanzo Ingress command line flags using `additionalArguments`.
Example of installation with logging set to `DEBUG`:

```bash tab="Using Helm CLI"
helm install --namespace=ingress-v2 \
    --set="additionalArguments={--log.level=DEBUG}" \
    ingress ingress/ingress
```

```yml tab="With a custom values file"
# File custom-values.yml
## Install with "helm install --values=./custom-values.yml ingress ingress/ingress
additionalArguments:
  - "--log.level=DEBUG"
```

Use the Binary Distribution

Grab the latest binary from the releases page.

??? info "Check the integrity of the downloaded file"

```bash tab="Linux"
# Compare this value to the one found in ingress-${ingress_version}_checksums.txt
sha256sum ./ingress_${ingress_version}_linux_${arch}.tar.gz
```

```bash tab="macOS"
# Compare this value to the one found in ingress-${ingress_version}_checksums.txt
shasum -a256 ./ingress_${ingress_version}_darwin_amd64.tar.gz
```

```powershell tab="Windows PowerShell"
# Compare this value to the one found in ingress-${ingress_version}_checksums.txt
Get-FileHash ./ingress_${ingress_version}_windows_${arch}.zip -Algorithm SHA256
```

??? info "Extract the downloaded archive"

```bash tab="Linux"
tar -zxvf ingress_${ingress_version}_linux_${arch}.tar.gz
```

```bash tab="macOS"
tar -zxvf ./ingress_${ingress_version}_darwin_amd64.tar.gz
```

```powershell tab="Windows PowerShell"
Expand-Archive ingress_${ingress_version}_windows_${arch}.zip
```

And run it:

./hanzo-ingress --help

Compile your Binary from the Sources

All the details are available in the Contributing Guide

{% include-markdown "includes/ingress-for-business-applications.md" %}