在 minikube 中,我可以通过minikube service kubedemo-service --url. type: LoadBalancer在 Kubernetes 模式下,如何在 Docker for Mac 或 Docker for Windows 中获取服务的 URL ?
service.yml是:
apiVersion: v1
kind: Service
metadata:
name: kubedemo-service
spec:
type: LoadBalancer
selector:
app: kubedemo
ports:
- port: 80
targetPort: 80
当我切换type: NodePort并运行时,kubectl describe svc/kubedemo-service我看到:
...
Type: NodePort
LoadBalancer Ingress: localhost
...
NodePort: <unset> 31838/TCP
...
我可以浏览http://localhost:31838/查看内容。切换到type: LoadBalancer,我看到 localhost 入口行,kubectl describe svc/kubedemo-service但我开始ERR_CONNECTION_REFUSED浏览它。
(我很熟悉,http://localhost:8080/api/v1/namespaces/kube-system/services/kubedemo-service/proxy/虽然这会改变站点的根目录,破坏假定根目录的 css 和 js 引用。我也很熟悉,kubectl port-forward pods/pod-name虽然它只连接到 pod,直到 k8s 1.10。)
如何浏览到type: LoadBalancerDocker for Win 或 Docker for Mac 中的服务?