Skip to main content
Version: 0.1.0

PortInput

Represents the configuration parameters for a service port. Allows specifying external port exposure, protocol handling, and LoadBalancer provisioning.

input PortInput {
port: String!
externalPort: String
protocol: PortProtocol!
public: Boolean!
https: Boolean!
grpc: Boolean
loadBalancer: Boolean
}

Fields

PortInput.port ● String! non-null scalar

The internal port number or range that the service runs on within the cluster. Specified as a string in the format "start-end" for port ranges (e.g., "3000-3005"). If a range is provided, it will be applied to both internal and external ports. In this case, 'externalPort' must not be specified.

PortInput.externalPort ● String scalar

Optional. The external port number or range exposed outside the Kubernetes cluster. Useful for configuring load balancers or ingress controllers for external exposure on a different port. If a port range is provided for 'port', this field must be either empty or the same as the 'port' value. If a single port is specified for 'port', this field can be used to expose the service on a different external port.

PortInput.protocol ● PortProtocol! non-null enum

The protocol used for data transmission through this port. Supported protocols are defined in the PortProtocol enum (e.g., TCP, UDP).

PortInput.public ● Boolean! non-null scalar

Determines the exposure of the port.

  • When 'true' and 'https' is also 'true', an Ingress is created for secure external access.
  • When 'true' and 'https' is 'false', the port is exposed using "HostPort" on the container for unsecured external access.
  • When 'false', the port is only accessible thru a Service within the cluster.

PortInput.https ● Boolean! non-null scalar

Specifies whether HTTPS should be used for secure communication. When 'true' and 'public' is also 'true', secure external access is enabled via an Ingress. Setting 'https' to 'true' is not allowed when 'public' is 'false', as it contradicts the internal-only port configuration.

PortInput.grpc ● Boolean scalar

Optional. Indicates support for the gRPC protocol over HTTPS. Only relevant when 'https' is 'true'. If 'true', the load balancer's traffic handling is adjusted to accommodate gRPC traffic.

PortInput.loadBalancer ● Boolean scalar

Optional. Specifies whether Zeet should provision the Kubernetes service in LoadBalancer mode. When 'true', the service is accessible through a cloud LoadBalancer with its own IP and port, enabling direct external access. This option is useful for services that require external access without an ingress controller.

Member Of

CreateProjectGitInput input ● ResourceKubernetesAppInput input ● ResourceServerlessInput input