簡體   English   中英

如何安裝“ingress-nginx”?

[英]How to install "ingress-nginx"?

我得到了以下在infra\k8s-dev\ingress-srv.yaml文件中使用ingress-nginx的代碼。

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress-service
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/use-regex: "true"
spec:
  rules:
    - host: mysite.local
      http:
        paths:
          - path: /api/users/?(.*)
            pathType: Prefix
            backend:
              service:
                name: auth-srv
                port:
                  number: 3000
          - path: /?(.*)
            pathType: Prefix
            backend:
              service:
                name: client-srv
                port:
                  number: 3000

我搜索了 inte.net 並找到了以下命令來安裝它:

kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.4.0/deploy/static/provider/cloud/deploy.yaml

但是我不確定我應該在哪里運行這個命令? 有沒有我還必須從 NPM 安裝的ingress-nginx package?

我在 Windows 10 機器上使用 Docker-Desktop。

你提到的命令是正確的

kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.4.0/deploy/static/provider/cloud/deploy.yaml

它自己將從 URL 下載並應用 YAML 配置,它將部署 Nginx controller。 Nginx ingress controller 將管理您在上面創建的 Ingress。

入口是轉移流量的規則,controller 管理這些規則(入口)。

因此只要運行 apply to K8s 集群上下文就會下載並啟動Nginx controller的 POD。

正如您在入口注釋中提到的

kubernetes.io/ingress.class: nginx

該特定入口規則將由 nginx controller 連接或管理。

在入口中你提到mysite.local所以確保在本地設置主機文件中你將域映射到 IP。

一旦 controller 啟動並運行,在瀏覽器中打開 URL (mysite.local) 將顯示該站點。

暫無
暫無

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

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