簡體   English   中英

無法在 nodejs 中使用帶有 kubernetes 的 ingress-nginx 訪問服務器

[英]can not access to server with ingress-nginx with kubernetes in nodejs

我想通過這條路由訪問服務器,但沒有成功。 https://ticketing.dev/api/user/currentuser

我在根文件夾skaffold.yaml中創建:

apiVersion: skaffold/v2beta11
kind: Config
deploy:
  kubectl:
    manifests:
      - ./infra/k8s/*
build:
  local:
    push: false
  artifacts:
    - image: kia9372/auth
      context: auth
      docker:
        dockerfile: Dockerfile
      sync:
        manual:
          - src: 'src/**/*.ts'
            dest: .

我創建了一個名為infra的文件夾,並在其中創建了一個名為k8s的文件夾。 在這個文件夾中,我創建了兩個文件:

答: auth-depl.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: auth-depl
spec:
  replicas: 1
  selector:
    matchLabels:
      app: auth
  template:
    metadata:
      labels:
        app: auth
    spec:
      containers:
        - name: auth
          image: kia9372/auth
---
apiVersion: v1
kind: Service
metadata:
  name: auth-srv
spec:
  selector:
    app: auth
  ports:
    - name: auth
      protocol: TCP
      port: 4000
      targetPort: 4000

B: ingress-srv.yaml

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: minimal-ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
  - host: ticketing.dev
  - http:
      paths:
      - path: /api/user/?(.*)
        backend:
          service:
            name: auth-srv
            port:
              number: 4000

並進入/etc/hosts我寫這個:

 # The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters


127.0.0.1   localhost
127.0.1.1   mr-programmer
127.0.1.1   ticketing.dev

但現在我有一個問題。 當我想在這條路線https://ticketing.dev/api/user/currentuser中使用 go 時,它不會顯示我的任何東西。 我通過這個https://localhost:4000/api/user/currentuser測試服務器分離 kubernetes 並且它可以工作。

什么問題? 我怎么解決這個問題?

Solution

  1. Go 到您的終端
  2. 輸入minikube ip - 你會得到 minikube ip(例如:172.17.0.2)
  3. Edit /etc/hosts

127.0.1.1 ticketing.dev更改為172.17.0.2 (minikube ip) ticketing.dev

你不能在這里寫本地 ip 地址(127.0.1.1),你應該在這里寫 minikube ip 地址(172.17.0.2),因為你使用的是 minikube。

暫無
暫無

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

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