| title | Deploy a Self-Hosted Gateway to Kubernetes with Helm |
|---|---|
| description | Learn how to deploy self-hosted gateway component of Azure API Management to Kubernetes by using Helm. |
| author | tomkerkhove |
| manager | mrcarlosdev |
| ms.service | azure-api-management |
| ms.topic | how-to |
| ms.date | 02/19/2026 |
| ms.author | tomkerkhove |
[!INCLUDE api-management-availability-premium-dev]
Helm is an open-source packaging tool that helps you install and manage the lifecycle of Kubernetes applications. Helm allows you to manage Kubernetes charts, which are packages of preconfigured Kubernetes resources.
This article explains how to deploy a self-hosted gateway component of Azure API Management to a Kubernetes cluster by using Helm.
Note
You can also deploy a self-hosted gateway to an Azure Arc-enabled Kubernetes cluster as a cluster extension.
- Create an Azure Kubernetes cluster, or have access to an existing one.
[!TIP] Single-node clusters work well for development and evaluation purposes. Use Kubernetes Certified multi-node clusters on-premises or in the cloud for production workloads.
- Create an Azure API Management instance.
- Provision a gateway resource in your API Management instance.
- Install Helm v3 or later.
-
Add Azure API Management as a new Helm repository by using the following command.
helm repo add azure-apim-gateway https://azure.github.io/api-management-self-hosted-gateway/helm-charts/ -
Update the repo to fetch the latest Helm charts.
helm repo update -
Verify your Helm configuration by listing all available charts.
helm search repo azure-apim-gatewayThe following example shows the available charts.
NAME CHART VERSION APP VERSION DESCRIPTION azure-apim-gateway/azure-api-management-gateway 1.15.0 2.11.0 A Helm chart to deploy an Azure API Management ...
[!INCLUDE api-management-self-hosted-gateway-authentication]
-
In the Azure portal, navigate to your API Management instance.
-
Under Deployment and infrastructure in the sidebar menu, select Self-hosted gateways.
-
Select the self-hosted gateway resource you intend to deploy.
-
Select Deployment.
-
A new token in the Token text box was autogenerated for you using the default Expiry and Secret Key values. Adjust either or both if desired, and select Generate to create a new token.
-
Take note of your Token and Configuration URL.
-
Install the self-hosted gateway by using the Helm chart.
helm install azure-api-management-gateway \ --set gateway.configuration.uri='<your configuration url>' \ --set gateway.auth.key='<your token>' \ azure-apim-gateway/azure-api-management-gateway
-
Execute the command. The command instructs your Kubernetes cluster to:
- Download the image of the self-hosted gateway from the Microsoft Container Registry and run it as a container.
- Configure the container to expose HTTP (8080) and HTTPS (8081) ports.
[!IMPORTANT] By default, the gateway uses a ClusterIP service and is only exposed inside the cluster. You can change this by specifying the type of Kubernetes service during installation.
For example, you can expose it through a load balancer by adding
--set service.type=LoadBalancer