Skip to content
This repository was archived by the owner on Feb 27, 2023. It is now read-only.

projectcontour/contour-operator

Deprecation Notice

This repository has been deprecated and archived as read-only. The code here is no longer maintained but is preserved for reference.

contour-operator

Contour Operator provides a method for packaging, deploying, and managing Contour. The operator extends the functionality of the Kubernetes API to create, configure, and manage instances of Contour on behalf of users. It builds upon the basic Kubernetes resource and controller concepts, but includes domain-specific knowledge to automate the entire lifecycle of Contour. Refer to the official Kubernetes documentation to learn more about the benefits of the operator pattern.

Get Started

Prerequisites

Install the Contour Operator & Contour CRDs:

$ kubectl apply -f https://raw.githubusercontent.com/projectcontour/contour-operator/main/examples/operator/operator.yaml

Verify the deployment is available:

$ kubectl get deploy -n contour-operator
NAME               READY   UP-TO-DATE   AVAILABLE   AGE
contour-operator   1/1     1            1           1m

Install an instance of the Contour custom resource:

$ kubectl apply -f https://raw.githubusercontent.com/projectcontour/contour-operator/main/examples/contour/contour.yaml

Verify the Contour custom resource is available:

$ kubectl get contour/contour-sample
NAME             READY   REASON
contour-sample   True    ContourAvailable

Note: It may take several minutes for the Contour custom resource to become available.

Test with Ingress:

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

Verify the example app deployment is available:

$ kubectl get deploy/kuard
NAME    READY   UP-TO-DATE   AVAILABLE   AGE
kuard   3/3     3            3           1m50s

Test the example app:

$ curl -o /dev/null -s -w "%{http_code}\n" http://local.projectcontour.io/
200

Note: A public DNS record exists for "local.projectcontour.io" which is configured to resolve to 127.0.0.1. This allows you to use a real domain name when testing in a kind cluster. If testing on a standard Kubernetes cluster, replace "local.projectcontour.io" with the hostname of kubectl get deploy/kuard.

Contributing

Thanks for taking the time to join our community and start contributing!

About

Experimental repository to explore an operator for deploying Contour

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors 15