繁体   English   中英

单个 K8s 集群和 Nginx controller 上的多个环境

[英]Multiple environment on single K8s cluster and Nginx controller

我们希望拥有 1 个 k8s 集群,并允许每个开发人员通过 URI“/developerName”分隔开发人员的环境来部署他们的环境,以及一个 NS,应用程序的每个部署都将部署在不同的 NS 上。

该应用程序是基于 web 的旧版 tomcat 应用程序。

我正在寻找一种好的方法,我可以将基于 URL 的每个开发人员的流量路由到不同的部署。

有 1 个限制,应用程序只需要 URL 中的应用程序名称。 即 example.com/username/appname 不起作用,因为该应用程序只需要 example.com/appname

我已经成功部署了 Nginx 入口 controller 并在我不在路径中使用“/developername”时检查它是否正常工作

您可以使用入口资源。 使用不同的主机名配置每个环境:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: ingress
  namespace: developer1
spec:
  rules:
    - host: developer1.mytestdomain.com
      http:
        paths:
          - backend:
              serviceName: my-tomcat-service
              servicePort: 8080
            path: /
  tls:
    - hosts:
        - developer1.mytestdomain.com
      secretName: mysslsecret

然后在*.mytestdomai.com上设置通配符域。 因此,您不必每次都添加子域并构建环境。 如果您不需要https ,请跳过tls部分。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM