无法公开 docker LoadBalancer 服务

Unable to expose docker LoadBalancer service

我正在尝试部署 docker 图像,它位于 public 存储库中。我正在尝试创建一个负载均衡器服务,并试图在我的系统 ip 地址中公开该服务,而不是 127.0.0.1。 我使用的是 windows 10,我的 docker 使用 WSL2 而不是 hyper-v。

下面是我的 .yaml 文件。因此,里面的服务将 运行 在端口 4200 中,因此为了避免任何混淆,我将所有端口都保留在 4200 中。

apiVersion: v1
kind: Service
metadata:
  name: hoopla
spec:
  selector:
    app: hoopla
  ports:
    - protocol: TCP
      port: 4200
      targetPort: 4200
  clusterIP: 10.96.1.3
  type: LoadBalancer
status:
  loadBalancer:
    ingress:
    - ip: 192.168.0.144
---
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app.kubernetes.io/name: hoopla
  name: hoopla
spec:
  replicas: 1
  selector:
    matchLabels:
      app.kubernetes.io/name: hoopla
  template:
    metadata:
      labels:
        app.kubernetes.io/name: hoopla
    spec:
      containers:
      - image: pubrepo/myimg:latest
        name: hoopla
        ports:
        - containerPort: 4200    

任何人都可以帮助我了解我犯了什么错误。我基本上想在我的系统 IP 地址上公开它。

loadBalancer 服务类型需要云提供商的负载均衡器 (https://kubernetes.io/docs/concepts/services-networking/service/)

LoadBalancer: Exposes the Service externally using a cloud provider's load balancer. NodePort and ClusterIP Services, to which the external load balancer routes, are automatically created

如果你想将你的服务暴露给你的本地机器,例如使用 kubernetes 服务 nodePort 类型,如果你只是想测试你的 webapp,你可以使用 kubernetes 服务 clusterIp输入并制作一个 port-forward,例如使用您的 clusterIp 服务:

kubectl port-forward svc/hoopla 4200:4200