This page will help you get up and running with Contour.
Before you start you will need:
type: LoadBalancer(AWS Quickstart cluster or Minikube, for example)
kubectlconfigured with admin access to your cluster
$ kubectl apply -f https://projectcontour.io/quickstart/contour.yaml
This command creates:
projectcontourwith two instances of Contour in the namespace
type: LoadBalancerthat points to the Contour instances
See also TLS support for details on configuring TLS support for the services behind Contour.
For information on configuring TLS for gRPC between Contour and Envoy, see our gRPC TLS documentation.
If you don't have an application ready to run with Contour, you can explore with kuard.
$ kubectl apply -f https://projectcontour.io/examples/kuard.yaml
This example specifies a default backend for all hosts, so that you can test your Contour install. It's recommended for exploration and testing only, however, because it responds to all requests regardless of the incoming DNS that is mapped. You probably want to run with specific Ingress rules for specific hostnames.
Now you can retrieve the external address of Contour's load balancer:
$ kubectl get -n projectcontour service contour -o wide NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR contour 10.106.53.14 a47761ccbb9ce11e7b27f023b7e83d33-2036788482.ap-southeast-2.elb.amazonaws.com 80:30274/TCP 3h app=contour
How you configure DNS depends on your platform:
For more deployment options, including uninstalling Contour, see the deployment documentation.
The detailed documentation provides additional information, including an introduction to Envoy and an explanation of how Contour maps key Envoy concepts to Kubernetes.
We've also got a FAQ for short-answer questions and conceptual stuff that doesn't quite belong in the docs.