簡體   English   中英

無法從 kubernetes 訪問應用程序

[英]unable to access application from kubernetes

我創建了一個簡單的 php 應用程序,試圖從 kubernetes 集群訪問,但我無法訪問該應用程序

我的部署.yml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: phpdeployment
spec:
  replicas: 3
  selector:
    matchLabels:
      app: phpapp
  template:
    metadata:
      labels:
        app: phpapp
    spec:
      containers:
      - image: rajendar38/myhtmlapp
        name: myhtmlapp
        ports:
        - containerPort: 80

我的服務.yml

apiVersion: v1
kind: Service
metadata:
  name: php-service
spec:
  selector:
    app: myhtmlapp
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
      nodePort: 31000
  type: NodePort

rajendar@HP-EliteBook:~/Desktop/work$ kubectl get services
NAME          TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)        AGE
kubernetes    ClusterIP   10.96.0.1        <none>        443/TCP        26h
my-service    ClusterIP   10.102.235.244   <none>        4000/TCP       24h
php-service   NodePort    10.110.73.30     <none>        80:31000/TCP   22m

當我嘗試連接到 http:127.0.0.1:31000/test.html 時,我正在為此應用程序使用 minikube 我無法連接到應用程序

謝謝

拉金達爾

Minikube 使用虛擬機來提供單節點集群。 公開 NodePort 服務時,從 VM 的角度來看,它是本地的,這通常與您的本地計算機不同。

使用minikube ip確定機器的 IP 並使用該 IP 而不是localhost127.0.0.1來訪問 minikube 集群上的 NodePort 服務。

目標端口和端口是相同的 80,因此服務使用端口 80 進行嘗試

    port: 8000
    targetPort: 80

正如@Thomas 所說,您必須找到 VM 的 IP:

minikube ip

並在您的情況下使用此 IP 和端口 31000 啟動服務。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM