Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 如何解决运行Kubernetes群集时nginx上的502坏网关错误_Angular_Docker_Nginx_Kubernetes - Fatal编程技术网

Angular 如何解决运行Kubernetes群集时nginx上的502坏网关错误

Angular 如何解决运行Kubernetes群集时nginx上的502坏网关错误,angular,docker,nginx,kubernetes,Angular,Docker,Nginx,Kubernetes,我已经用一些后端微服务建立了一个Kubernetes集群,它们都可以很好地与nginx配合使用。但是,我无法访问我的角度前端,因为它给我一个502错误 我的angular应用程序的Dockerfile(我尝试了许多不同的实现,这是最近的一个): angular应用程序的my Kubernetes部署和服务的yaml文件: apiVersion: apps/v1 kind: Deployment metadata: name: client-depl spec: replicas: 1

我已经用一些后端微服务建立了一个Kubernetes集群,它们都可以很好地与nginx配合使用。但是,我无法访问我的角度前端,因为它给我一个502错误

我的angular应用程序的Dockerfile(我尝试了许多不同的实现,这是最近的一个):

angular应用程序的my Kubernetes部署和服务的yaml文件:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: client-depl
spec:
  replicas: 1
  selector:
    matchLabels:
      app: frontendx
  template:
    metadata:
      labels:
        app: frontendx
    spec:
      containers:
        - name: frontendx
          image: akeedm/frontendx

---

apiVersion: v1
kind: Service
metadata:
  name: client-srv
spec:
  selector:
    app: frontendx
  type: ClusterIP
  ports:
    - name: frontendx
      protocol: TCP
      port: 4200
      targetPort: 4200
我的入口配置的yaml文件(最后一个路由是问题):

应用yaml文件并部署kubernetes群集后,我可以正确连接到除angular应用程序之外的所有服务。当我尝试连接到时,出现错误502坏网关。当我尝试在/var/log/nginx查看日志时,access.log和error.log文件都是空的

下面是angular应用程序的running pod启动时的终端。当我得到502错误时,没有新条目

/docker-entrypoint.sh:/docker-entrypoint.d/不为空,将 尝试执行配置

/docker-entrypoint.sh:在中查找shell脚本 /docker入口点/

/docker-entrypoint.sh:启动 /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh

10-listen-on-ipv6-by-default.sh:info:获取 /etc/nginx/conf.d/default.conf

10-listen-on-ipv6-by-default.sh:info:Enabled-listen-on-ipv6-in /etc/nginx/conf.d/default.conf

/docker-entrypoint.sh:启动 /docker-entrypoint.d/20-envsubs-on-templates.sh

/docker-entrypoint.sh:启动 /docker-entrypoint.d/30-tune-worker-processs.sh

/docker-entrypoint.sh:配置完成;准备好启动了吗


您是否尝试过单独运行FE容器(例如在docker中),以查看其是否有效?了解问题所在。另外,请运行
kubectl描述入口srv
,并将其张贴在此处。
apiVersion: apps/v1
kind: Deployment
metadata:
  name: client-depl
spec:
  replicas: 1
  selector:
    matchLabels:
      app: frontendx
  template:
    metadata:
      labels:
        app: frontendx
    spec:
      containers:
        - name: frontendx
          image: akeedm/frontendx

---

apiVersion: v1
kind: Service
metadata:
  name: client-srv
spec:
  selector:
    app: frontendx
  type: ClusterIP
  ports:
    - name: frontendx
      protocol: TCP
      port: 4200
      targetPort: 4200
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress-srv
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/use-regex: 'true'

spec:
  rules:
    - host: rides.com
      http:
        paths:
          - path: /users/create
            pathType: Prefix
            backend:
              service:
                name: enduser-clusterip-srv
                port:
                  number: 4000
          - path: /users
            pathType: Prefix
            backend:
              service:
                name: query-srv
                port:
                  number: 5200
          - path: /posts
            pathType: Prefix
            backend:
              service:
                name: query-srv
                port:
                  number: 5200
          - path: /users/?(.*)/adverts
            pathType: Prefix
            backend:
              service:
                name: advert-srv
                port:
                  number: 4100
          - path: /
            pathType: Prefix
            backend:
              service:
                name: client-srv
                port:
                  number: 4200