首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在路径级别应用nginx-ingress注释

在路径级别应用nginx-ingress注释
EN

Stack Overflow用户
提问于 2020-03-18 23:49:28
回答 2查看 1.9K关注 0票数 3

我们正在从传统的nginx部署迁移到kubernetes nginx入口控制器。我试图在location级别应用设置,但无法看到如何通过注释实现设置。

例如,我们有:

代码语言:javascript
复制
server {
  listen 80;
  server_name example.com;

  location /allow-big-uploads {
    client_max_body_size 100M;
    ...
  }
}

我们翻译成这样的东西:

代码语言:javascript
复制
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: web-ingress
  annotations:
    nginx.ingress.kubernetes.io/proxy-body-size: 100m <-- this now applies globally
spec:
  rules:
    - host: example.com
      http:
        paths:
          - path: /allow-big-uploads
            backend:
              serviceName: example-svc
              servicePort: 5009

path部分中添加注释似乎不起作用。我是不是遗漏了什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-03-19 03:12:27

注解只能设置在整个kubernetes资源上,因为它们是资源元数据的一部分。入口规格不包括较低级别的该功能。

如果您正在寻找更复杂的设置,特雷菲克已经为它们的入口控制器构建了一个允许每个服务配置更多的自定义资源定义。缺点是定义与其他入口控制器不兼容。

票数 2
EN

Stack Overflow用户

发布于 2020-05-21 12:41:01

如果您在同一台主机上有两个位置,并且只想在一个位置上应用一个设置,则可以使用相同的主机创建两个入口,并在您感兴趣的入口上应用配置片段注释:

https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#configuration-snippet

代码语言:javascript
复制
nginx.ingress.kubernetes.io/configuration-snippet: |

  more_set_headers "Request-Id: $req_id";

我已经试过这个例子了,它奏效了。

但是,当我试图通过配置片段更改client_max_body_size时,我会得到以下错误:

代码语言:javascript
复制
"client_max_body_size" directive is duplicate
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60749036

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档