kubectl expose 指令用於將 Kubernetes 資源(如 Pod、ReplicationController、Service、Deployment 等)暴露為一個新的 Service。這個指令可以幫助你快速創建一個 Service,從而使外部流量能夠訪問你的應用程式。(ClusterIP)
基本用法
例如:
這會創建一個 Service,將外部的 80 埠流量轉發到
my-deployment 的 8080 埠。常見參數
-port:指定 Service 的埠號。
-target-port:指定目標容器的埠號。
-type:指定 Service 的類型。常見的類型有ClusterIP、NodePort、LoadBalancer和ExternalName。
-name:指定 Service 的名稱。
-protocol:指定 Service 的協議。常見的協議有TCP和UDP。
-selector:指定標籤選擇器,用於選擇要暴露的 Pod。
範例
- 將一個 Pod 暴露為一個 ClusterIP Service:
- 將一個 Deployment 暴露為一個 NodePort Service:
- 將一個 Service 暴露為一個 LoadBalancer:
- 使用標籤選擇器將一組 Pod 暴露為一個 Service:
- 指定 Service 名稱: