proxy

package
v1.2.5 Latest Latest
Warning

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

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

Documentation

Index

Constants

This section is empty.

Variables

View Source
var NginxL7Name = "nginxL7"

Functions

func CheckProtocols

func CheckProtocols(name string, ports []dme.AppPort) (bool, bool)

func CreateEnvoyProxy

func CreateEnvoyProxy(ctx context.Context, client ssh.Client, name, envoyImage string, config *ProxyConfig, appInst *edgeproto.AppInst, authAPI cloudcommon.RegistryAuthApi, ops ...Op) error

func CreateNginxProxy

func CreateNginxProxy(ctx context.Context, client ssh.Client, name, envoyImage, nginxImage string, config *ProxyConfig, appInst *edgeproto.AppInst, authAPI cloudcommon.RegistryAuthApi, ops ...Op) error

func DeleteEnvoyProxy

func DeleteEnvoyProxy(ctx context.Context, client ssh.Client, name string) error

func DeleteNginxProxy

func DeleteNginxProxy(ctx context.Context, client ssh.Client, name string) error

func GetEnvoyContainerName

func GetEnvoyContainerName(name string) string

Types

type Op

type Op func(opts *Options)

func WithDockerNetwork

func WithDockerNetwork(network string) Op

func WithDockerPublishPorts

func WithDockerPublishPorts() Op

func WithDockerUser

func WithDockerUser(user string) Op

func WithMetricEndpoint

func WithMetricEndpoint(endpoint string) Op

func WithTLSCert

func WithTLSCert(cert *access.TLSCert) Op

type Options

type Options struct {
	DockerPublishPorts bool
	DockerNetwork      string
	Cert               *access.TLSCert
	DockerUser         string
	MetricIP           string
	MetricUDS          bool // Unix Domain Socket
}

func (*Options) Apply

func (o *Options) Apply(ops []Op)

type ProxyConfig

type ProxyConfig struct {
	ListenIP    string
	DestIP      string
	ListenIPV6  string
	DestIPV6    string
	SkipHCPorts string
}

type ProxySpec

type ProxySpec struct {
	Name        string
	UDPSpec     []*UDPSpecDetail
	TCPSpec     []*TCPSpecDetail
	UsesTLS     bool // To be removed
	MetricIP    string
	MetricPort  int32
	MetricUDS   bool
	CertName    string
	WorkerConns int
}

type TCPSpecDetail

type TCPSpecDetail struct {
	ListenIP        string
	ListenPort      int32
	BackendIP       string
	BackendPort     int32
	ConcurrentConns uint64
	UseTLS          bool // for port specific TLS termination
	HealthCheck     bool
	IPTag           string
}

type UDPSpecDetail

type UDPSpecDetail struct {
	ListenIP         string
	ListenPort       int32
	NginxListenPorts []int32
	BackendIP        string
	BackendPort      int32
	ConcurrentConns  uint64
	MaxPktSize       int64
	IPTag            string
}

Directories

Path Synopsis
Package certscache provides for issuing and caching of cloudlet rootLB certificates.
Package certscache provides for issuing and caching of cloudlet rootLB certificates.

Jump to

Keyboard shortcuts

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