ServicePort

A port mapping within a Service, defining the protocol, service-facing port, and the target pod port.

Container OrchestrationKubernetesLoad BalancingNetworkingService Discovery

Properties

Name Type Description
name string Port name. Must be unique within the ports list and conform to DNS_LABEL format. Required for multi-port Services.
port integer Port number the Service listens on.
targetPort object Port number or named port on the Pod to forward traffic to. Defaults to the value of port.
protocol string Network protocol for this port. Defaults to TCP.
nodePort integer Port exposed on each node for NodePort and LoadBalancer service types. Allocated automatically if not specified.
appProtocol string Application-layer protocol hint for the port. Examples: h2c, ws, wss, kubernetes.io/h2c.
View JSON Schema on GitHub

JSON Schema

kubernetes-services-serviceport-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/ServicePort",
  "title": "ServicePort",
  "type": "object",
  "description": "A port mapping within a Service, defining the protocol, service-facing port, and the target pod port.",
  "required": [
    "port"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "Port name. Must be unique within the ports list and conform to DNS_LABEL format. Required for multi-port Services.",
      "maxLength": 15
    },
    "port": {
      "type": "integer",
      "minimum": 1,
      "maximum": 65535,
      "description": "Port number the Service listens on."
    },
    "targetPort": {
      "description": "Port number or named port on the Pod to forward traffic to. Defaults to the value of port.",
      "oneOf": [
        {
          "type": "integer",
          "minimum": 1,
          "maximum": 65535
        },
        {
          "type": "string"
        }
      ]
    },
    "protocol": {
      "type": "string",
      "enum": [
        "TCP",
        "UDP",
        "SCTP"
      ],
      "description": "Network protocol for this port. Defaults to TCP.",
      "default": "TCP"
    },
    "nodePort": {
      "type": "integer",
      "minimum": 30000,
      "maximum": 32767,
      "description": "Port exposed on each node for NodePort and LoadBalancer service types. Allocated automatically if not specified."
    },
    "appProtocol": {
      "type": "string",
      "description": "Application-layer protocol hint for the port. Examples: h2c, ws, wss, kubernetes.io/h2c."
    }
  }
}