【问题标题】:how to enable-cors in GKE with ingress如何在 GKE 中通过入口启用 Cors
【发布时间】:2018-06-19 19:13:16
【问题描述】:

我正在尝试使用以下注释启用带有入口的 cors,但没有成功:

 kubernetes.io/ingress.class: "nginx"
nginx.ingress.kubernetes.io/enable-cors: "true"

【问题讨论】:

标签: kubernetes google-kubernetes-engine


【解决方案1】:

正确的注解是ingress.kubernetes.io/enable-cors: "true"

【讨论】:

  • 是的,必须使用nginx控制器而不是gce。
【解决方案2】:

这是对在 GCP 上使用 Kubernetes 的人的已批准答案的补充。

如果人们现有的 Ingress 使用 gce 类运行,他们需要先切换到 nginx

那么你应该按照NGINX Ingress Controller - Installation Guide的安装步骤。

但请注意,如果您使用的是 Kubernetes 1.8+,则默认启用 RBAC。在运行第一个 RBAC 安装行时,这可能会给您一个错误。错误类似于:“来自服务器的错误(禁止):创建“STDIN”时出错:clusterroles.rbac.authorization.k8s.io “nginx-ingress-clusterrole”被禁止:尝试授予额外权限”。

虽然此配置步骤失败,但 nginx 入口控制器将无法运行,它会一遍又一遍地崩溃并抱怨 RBAC。

当我自己在网上搜索时,我发现了一个与此错误相关的帖子,它帮助我获得了一个正在运行的 nginx 入口控制器。

请阅读post by user dafstone at March 5 2018

它将您的 GCP 帐户添加为集群管理员,允许您按照安装指南中的说明安装所需的 RBAC 规则。

祝你好运!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-06-24
    • 1970-01-01
    • 1970-01-01
    • 2020-04-13
    • 2017-08-10
    • 2023-04-04
    • 2020-01-09
    相关资源
    最近更新 更多