首页 > 解决方案 > Minikube Ingress 无法解析,但 minikube IP 可以

问题描述

我正在 Windows 10 上的 minikube 集群中运行一个简单的 pod,其中包含来自本地映像注册表的映像。我还在运行一个简单的 nodeport 服务。当我尝试使用 <minikube_ip>:30080 从浏览器访问该容器时,该容器可用。

但是,现在我想设置一个入口控制器,因为我想设置一个域而不是使用 IP 访问它。入口适用于基本 nginx pod 等简单的东西,但不适用于我正在尝试使用的这个 pod。我以前在 docker-compose 中使用 jwilder/nginx-proxy,它有一些需要附加到 conf.d 目录中的 conf 文件。但是,由于我要迁移到 Kubernetes,我想完全省略 conf 文件和反向代理映像。

现在主机文件更新后,可以通过 curl 访问域,域也可以 ping,但是,在浏览器上根本无法访问。

豆荚yaml:

apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    io.kompose.service: api
  name: api
spec:
  replicas: 1
  selector:
    matchLabels:
      io.kompose.service: api
  strategy:
    type: RollingUpdate
  template:
    metadata:
      labels:
        io.kompose.service: api
    spec:
      containers:
      - env:
        - name: DEV_PORT
          value: "80"
        image: localhost:5000/api:2.3
        imagePullPolicy: "IfNotPresent"
        name: api
        resources: {}
      restartPolicy: Always
      serviceAccountName: ""
status: {}

服务.yaml

apiVersion: v1
kind: Service
metadata:
  annotations:
    kompose.cmd: C:\Users\***kompose.exe
      convert
    kompose.version: 1.21.0 (992df58d8)
  creationTimestamp: null
  labels:
    io.kompose.service: api
  name: api
spec:
  selector:
    io.kompose.service: api
  type: NodePort
  ports:
  - name: "http"
    port: 80
    targetPort: 80
    nodePort: 30080

入口.yaml

 apiVersion: networking.k8s.io/v1beta1 # for versions before 1.14 use extensions/v1beta1
 kind: Ingress
 metadata:
   name: tls-ingress
 spec:
   tls:
     - secretName: oaky-tls
       hosts: 
         - api.localhost
   rules:
   - host: api.localhost
     http:
       paths:
       - path: /
         backend:
           serviceName: api
           servicePort: 80

我已经检查并且 TLS 密码可用,我不理解这里的问题,非常感谢一些帮助。

标签: nginxkuberneteskubernetes-ingressnginx-reverse-proxy

解决方案


已解决:Chrome 忽略了 etc hosts 文件,所以我做了以下操作:

  • 切换到 Firefox,URL 立即生效。
  • 添加注释来表示类:

kubernetes.io/ingress.class:nginx

  • 添加注释以确保将请求重定向到 ssl

nginx.ingress.kubernetes.io/ssl-redirect:“真”


推荐阅读