繁体   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