Set DataPlane Image

Deployment Platform
Related Documentation
TL;DR

Use PodTemplateSpec to customize the container spec and specify an image name for the proxy container.

Prerequisites

If you don’t have a Konnect account, you can get started quickly with our onboarding wizard.

  1. The following Konnect items are required to complete this tutorial:
    • Personal access token (PAT): Create a new personal access token by opening the Konnect PAT page and selecting Generate Token.
  2. Set the personal access token as an environment variable:

    export KONNECT_TOKEN='YOUR KONNECT TOKEN'
    
  1. Add the Kong Helm charts:

    helm repo add kong https://charts.konghq.com
    helm repo update
    
  2. Install Kong Gateway Operator using Helm:

    helm upgrade --install kong-operator kong/kong-operator -n kong-system \
      --create-namespace \
      --set image.tag=2.0.2 \
      --set env.ENABLE_CONTROLLER_KONNECT=true
    

If you want cert-manager to issue and rotate the admission and conversion webhook certificates, install cert-manager to your cluster and enable cert-manager integration by passing the following argument while installing:

--set global.webhooks.options.certManager.enabled=true

If you do not enable this, the chart will generate and inject self-signed certificates automatically. We recommend enabling cert-manager to manage the lifecycle of these certificates.

  1. Add the Kong Helm charts:

    helm repo add kong https://charts.konghq.com
    helm repo update
    
  2. Install Kong Gateway Operator using Helm:

    helm upgrade --install kong-operator kong/kong-operator -n kong-system \
      --create-namespace \
      --set image.tag=2.0.2 \
      --set env.ENABLE_CONTROLLER_KONNECT=true
    

If you want cert-manager to issue and rotate the admission and conversion webhook certificates, install cert-manager to your cluster and enable cert-manager integration by passing the following argument while installing:

--set global.webhooks.options.certManager.enabled=true

If you do not enable this, the chart will generate and inject self-signed certificates automatically. We recommend enabling cert-manager to manage the lifecycle of these certificates.

Deploy a DataPlane

The DataPlane image can be specified by providing a custom image value for the proxy container. This value is provided in the PodTemplateSpec field in either the DataPlane or the GatewayConfiguration resource.

The following example uses the DataPlane resource, but you can also configure your GatewayConfiguration resource as needed. For more information see the PodTemplateSpec page.

echo '
apiVersion: gateway-operator.konghq.com/v1beta1
kind: DataPlane
metadata:
  name: dataplane-example
  namespace: kong
spec:
  deployment:
    podTemplateSpec:
      spec:
        containers:
        - name: proxy
          image: kong/kong-gateway:3.9
' | kubectl apply -f -

Validation

To validate that the correct image was used, fetch the pod created by Kong Gateway Operator and check the .spec.containers[].image value:

NAME=$(kubectl get -o yaml -n kong pod | yq '.items[].metadata.name | select(contains("dataplane-example"))')
kubectl get -o yaml -n kong pod $NAME \
  | yq '.spec.containers[] | select(.name == "proxy") | .image'

You should see the value kong/kong-gateway:3.10.

Something wrong?

Help us make these docs great!

Kong Developer docs are open source. If you find these useful and want to make them better, contribute today!