contour

module
v1.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 3, 2020 License: Apache-2.0

README

Contour Build Status Go Report Card GitHub release License

Contour is fun at parties!

Overview

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.

Contour also introduces a new ingress API (HTTPProxy) which is implemented via a Custom Resource Definition (CRD). Its goal is to expand upon the functionality of the Ingress API to allow for a richer user experience as well as solve shortcomings in the original design.

Prerequisites

Contour is tested with Kubernetes clusters running version 1.10 and later, but should work with earlier versions where Custom Resource Definitions are supported (Kubernetes 1.7+).

RBAC must be enabled on your cluster.

Get started

Getting started with Contour is as simple as one command. See the Getting Started document.

Troubleshooting

If you encounter issues, review the troubleshooting docs, file an issue, or talk to us on the #contour channel on the Kubernetes Slack server.

Contributing

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

  • Please familiarize yourself with the Code of Conduct before contributing.
  • See CONTRIBUTING.md for information about setting up your environment, the workflow that we expect, and instructions on the developer certificate of origin that we require.
  • Check out the open issues.
  • Join our Kubernetes Slack channel: #contour
  • Join the Contour Community Meetings, every third Tuesday at 6PM ET / 3PM PT / Wednesday at 8AM Australian Eastern Time.
    • Meeting notes can be found here.
    • Meetings are recorded and can be found here.

Changelog

See the list of releases to find out about feature changes.

Directories

Path Synopsis
apis
contour/v1beta1
Package v1beta1 is the v1beta1 version of the API.
Package v1beta1 is the v1beta1 version of the API.
projectcontour/v1
Package v1 is the v1 version of the API.
Package v1 is the v1 version of the API.
cmd
internal
assert
Package assert provides assertion helpers
Package assert provides assertion helpers
certgen
Package certgen contains the code that handles the `certgen` subcommand for the main `contour` binary.
Package certgen contains the code that handles the `certgen` subcommand for the main `contour` binary.
contour
Package contour contains the translation business logic that listens to Kubernetes ResourceEventHandler events and translates those into additions/deletions in caches connected to the Envoy xDS gRPC API server.
Package contour contains the translation business logic that listens to Kubernetes ResourceEventHandler events and translates those into additions/deletions in caches connected to the Envoy xDS gRPC API server.
dag
Package dag provides a data model, in the form of a directed acyclic graph, of the relationship between Kubernetes Ingress, Service, and Secret objects.
Package dag provides a data model, in the form of a directed acyclic graph, of the relationship between Kubernetes Ingress, Service, and Secret objects.
debug
Package debug provides http endpoints for healthcheck, metrics, and pprof debugging.
Package debug provides http endpoints for healthcheck, metrics, and pprof debugging.
e2e
Package e2e provides end-to-end tests.
Package e2e provides end-to-end tests.
envoy
Package envoy contains APIs for translating between Contour objects and Envoy configuration APIs and types.
Package envoy contains APIs for translating between Contour objects and Envoy configuration APIs and types.
featuretests
Package featuretests provides end to end tests of specific features.
Package featuretests provides end to end tests of specific features.
grpc
Package grpc provides a gRPC implementation of the Envoy v2 xDS API.
Package grpc provides a gRPC implementation of the Envoy v2 xDS API.
httpsvc
Package httpsvc provides a HTTP/1.x Service which is compatible with the workgroup.Group API.
Package httpsvc provides a HTTP/1.x Service which is compatible with the workgroup.Group API.
k8s
Package k8s contains helpers for setting the IngressRoute status
Package k8s contains helpers for setting the IngressRoute status
metrics
Package metrics provides Prometheus metrics for Contour.
Package metrics provides Prometheus metrics for Contour.
protobuf
Package protobuf provides helpers for working with golang/protobuf types.
Package protobuf provides helpers for working with golang/protobuf types.
workgroup
Package workgroup provides a mechanism for controlling the lifetime of a set of related goroutines.
Package workgroup provides a mechanism for controlling the lifetime of a set of related goroutines.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL