【问题标题】:Get URL and access a running service without Minikube Cluster , using a Docker Kubernetes cluster使用 Docker Kubernetes 集群获取 URL 并在没有 Minikube Cluster 的情况下访问正在运行的服务
【发布时间】:2020-11-11 21:51:09
【问题描述】:

我正在使用 Docker 运行我的 Kubernetes 集群,而不是使用 Minikube 集群(需要大量内存),但是在应用所需文件后,我无法获得外部 URL(就像我使用 Minikube 时一样)在我的 Chrome 浏览器中运行它。

考虑以下几点:

豆荚:

apiVersion: v1
kind: Pod
metadata:
  name: webapp-release-0-5
  labels:
    app: webapp
    release: "0-5"
spec:
  containers:
  - name: webapp
    image: richardchesterwood/k8s-fleetman-webapp-angular:release0-5

及其服务:

apiVersion: v1
kind: Service
metadata:
  name: fleetman-webapp

spec:
  # This defines which pods are going to be represented by this Service
  # The service becomes a network endpoint for either other services
  # or maybe external users to connect to (eg browser)
  selector:
    app: webapp
    release: "0-5"

  ports:
    - name: http
      port: 80
      nodePort: 30080

  type: NodePort

从命令行(WINDOWS 10 CLI)应用两者后:

>>> kubectl get services
fleetman-webapp        NodePort    10.96.227.189    <none>        80:30080/TCP        5m57s

>>> kubectl get po

webapp                                   1/1     Running   0          12m
webapp-release-0-5                       1/1     Running   0          12m

但是,我没有这个 POD 的外部 URL 可以放在我的浏览器中以检查应用程序,就像我以前在 Minikube 中那样。

我们如何生成这样的 URL?

【问题讨论】:

  • I've had some trouble with this 过去,看起来那个问题确实没有令人满意的结果。那里的提示包括将服务更改为 LoadBalancer 类型、使用命令式 kubectl expose deployment 命令或使用 pod 端端口。我倾向于使用kind 来满足我的本地 Kubernetes 需求,它对我很有帮助。

标签: docker kubernetes kubectl kubernetes-ingress minikube


【解决方案1】:

让它以定制的方式工作特别困难。我建议使用 kind 它将 kubernetes 节点创建为 docker 容器。您可以通过http://&lt;NODEIP&gt;:&lt;NODEPORT&gt; 访问 NodePort 服务。要获取NODEIP,请使用kubectl get nodes

【讨论】:

    猜你喜欢
    • 2020-09-22
    • 2017-09-04
    • 2020-11-11
    • 2019-03-16
    • 2018-02-13
    • 2021-05-20
    • 1970-01-01
    • 2020-06-17
    • 2021-10-02
    相关资源
    最近更新 更多