同一域下的多个React应用

时间:2017-11-04 18:18:57

标签: reactjs nginx react-router kubernetes

我有一个很大的应用程序分成几个微服务:

  • Blog
  • Blog CMS
  • Ecommerce
  • Dashboard

所有内容都通过Kubernetes部署到Google Cloud Engine。

所有应该在同一个域名下提供,比如www.bigapp.com。

每个部分:博客,电子商务,仪表板等......是一个React应用程序,它存在于它自己的Docker镜像和pod中。

我用Kubernetes创建了一个Ingress并在GCE上进行了部署。

Ingress文件:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: test
  annotations:
     kubernetes.io/ingress.class: "gce"
     kubernetes.io/ingress.global-static-ip-name: ingress-front-end-ip-test
     ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
  - http:
      paths:
      - path: /
        backend:
          serviceName: ecommerce
          servicePort: 4001
      - path: /buy
        backend:
          serviceName: ecommerce
          servicePort: 4001
      - path: /buy/*
        backend:
          serviceName: ecommerce
          servicePort: 4001
      - path: /dashboard
        backend:
          serviceName: dashboard
          servicePort: 4002
      - path: /dashboard/*
        backend:
          serviceName: dashboard
          servicePort: 4002
      - path: /news
        backend:
          serviceName: news
          servicePort: 4003
      - path: /news/*
        backend:
          serviceName: news
          servicePort: 4003

当用户在www.bigapp.com或www.gibapp.com/buy中输入时,它将被定向到ecommerce应用。 到目前为止一切都很好。

但如果用户试图访问www.bigapp.com/dashboard,ecommerce应用的路由器将不允许这样做。

非常感谢任何帮助!

0 个答案:

没有答案