Kubectl expose: Difference between revisions
Jump to navigation
Jump to search
Line 8: | Line 8: | ||
If a pod is used, the command | If a pod is used, the command | ||
<syntaxhighlight lang='bash'> | |||
kubectl [-n <namespace>] expose pod <pod-name> --port=<port> --target-port=<target-port> --name=<service-name> [--type=ClusterIP|NodePort|...] | |||
</syntaxhighlight> | |||
If a replication controller, deployment or replicset are used, the command | If a replication controller, deployment or replicset are used, the command | ||
Revision as of 23:58, 19 September 2020
Internal
Overview
expose dynamically exposes a resource, which can be a pod, service, replicationcontroller, deployment or replicaset as a new service.
If a pod is used, the command
kubectl [-n <namespace>] expose pod <pod-name> --port=<port> --target-port=<target-port> --name=<service-name> [--type=ClusterIP|NodePort|...]
If a replication controller, deployment or replicset are used, the command
The default service type is ClusterIP, other type (NodePort, LoadBalancer, or ExternalName) can be specified with --type.
kubectl [-n default] expose pod pg-0 --port=5432 --target-port=5432 --name=postgres --type=NodePort
TODO: I don't seem to see the service with kubectl get services, but attempting to connect to the database works.