lingress

package module
v0.7.12 Latest Latest
Warning

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

Go to latest
Published: Apr 22, 2024 License: Apache-2.0 Imports: 18 Imported by: 0

README

lingress

lingress = The lean ingress controller.

In contrast to the most other ingress controllers for Kubernetes, this one does not come with extreme many different features and tries to be extreme dynamic. It tries to be as lean as possible.

Topics

  1. Main principles
  2. Requirements
  3. Setup ➡️
  4. Configuration ➡️
  5. Headers ➡️
  6. Examples ➡️
  7. Contributing ➡️
  8. Code of Conduct ➡️
  9. License ➡️

Main principles

  1. Minimal configuration: Just one single configuration and this as short as possible; without repeating common stuff for all ingress configurations (like ensure CORS). The majority of the ingress controllers coming nowadays with other many several configurations and/or you have to define different settings for http and https.

  2. Centralize standards: Settings like CORS or HSTS usually settings you want to have for your whole application. For the majority of the ingress controllers, these settings are made per ingress configuration. lingress provides the feature to centralize these settings and even force them.

  3. HTTPS by default: As lingress makes no difference between http and https by default, it also forces (which is nowadays industry standards) the clients to https (if the clients comes from http).

  4. Industry standards by default: Instead of always activating some industry standards or even need plugins to add them lingress, supports the important ones out of the box. See headers sections for examples.

Requirements

  1. Kubernetes cluster with API v1.22.0+ (or API compatible such as k3s or OpenShift Kubernetes Engine)
  2. Helm v3.0.0+

More topics

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ConnectionStates added in v0.1.19

type ConnectionStates struct {
	New    uint64
	Active uint64
	Idle   uint64
}

type Lingress

type Lingress struct {
	RulesRepository rules.CombinedRepository
	Proxy           *proxy.Proxy
	Fallback        *fallback.Fallback
	Management      *management.Management
	Http            *server.HttpConnector
	Https           *server.HttpConnector
	// contains filtered or unexported fields
}

func (*Lingress) Init

func (this *Lingress) Init(stop support.Channel) error

func (*Lingress) OnConnState added in v0.2.0

func (this *Lingress) OnConnState(connector server.Connector, conn net.Conn, state http.ConnState)

func (*Lingress) ServeHTTP added in v0.1.19

func (this *Lingress) ServeHTTP(connector server.Connector, resp http.ResponseWriter, req *http.Request)

Jump to

Keyboard shortcuts

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