DirectorySecurity advisories
Sign in

Directory

contour-bitnami logo

contour-bitnami

Last changed
Sign in for updates

Get notified of upcoming product changes, critical vulnerability notifications and patches and more.

Sign in
Versions
Overview
Provenance
Specifications
SBOM
Vulnerabilities
Advisories

Contour is an ingress controller for Kubernetes that works by deploying the Envoy proxy as a reverse proxy and load balancer. Contour supports dynamic configuration updates out of the box while maintaining a lightweight profile.

Download this Image

The image is available on cgr.dev:

docker pull cgr.dev/chainguard/contour-bitnami:latest

Usage

To deploy Contour with the Bitnami variant using the Helm chart, follow these steps:

Add the Bitnami Helm repository

helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo update

Install the Contour Helm chart

helm install contour bitnami/contour \
    --set contour.image.registry="cgr.dev" \
    --set contour.image.repository="chainguard/contour-bitnami" \
    --set contour.image.tag=latest

Test it out!

You should see the following:

  • 2 Contour pods each with status Running and 1/1 Ready
  • 1+ Envoy pod(s), each with the status Running and 2/2 Ready

Now that you have installed Contour and Envoy, let’s install a web application workload and get some traffic flowing to the backend.

To install httpbin, run the following:

kubectl apply -f https://projectcontour.io/examples/httpbin.yaml

Verify the pods and services are running:

kubectl get po,svc,ing -l app=httpbin

You should see the following:

  • 3 instances of pods/httpbin, each with status Running and 1/1 Ready
  • 1 service/httpbin CLUSTER-IP listed on port 80
  • 1 Ingress on port 80

NOTE: The Helm install configures Contour to filter Ingress and HTTPProxy objects based on the contour IngressClass name. If using Helm, ensure the Ingress has an ingress class of contour with the following:

kubectl patch ingress httpbin -p '{"spec":{"ingressClassName": "contour"}}'

Next, we can kubectl port-forward to get traffic to Envoy:

kubectl -n projectcontour port-forward service/contour-envoy 8888:80

In a browser or via curl, make a request to http://local.projectcontour.io:8888

curl -s http://local.projectcontour.io:8888/

Congratulations, you have installed Contour, deployed a backend application, created an Ingress to route traffic to the application, and successfully accessed the app with Contour!

For further next steps, you can also continue with official docs to play around

Licenses

Chainguard Images contain software packages that are direct or transitive dependencies. The following licenses were found in the "latest" version of this image:

  • Apache-2.0

  • LGPL-2.1-or-later

  • MIT

  • MPL-2.0

For a complete list of licenses, please refer to this Image's SBOM.

Software license agreement

Category
application
ingress
kubernetes
networking

Products

Chainguard Images

© 2024 Chainguard, Inc.