【问题标题】:How to convert Nginx configuration to nginx-ingress?如何将 Nginx 配置转换为 nginx-ingress?
【发布时间】:2019-03-21 19:06:25
【问题描述】:

我有以下配置的 nginx:

  proxy_redirect off;
  proxy_set_header Host $host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_set_header X-Forwarded-Proto $scheme;
  client_max_body_size 1g;
  client_body_buffer_size 128k;
  proxy_connect_timeout 120;
  proxy_send_timeout 240;
  proxy_read_timeout 240;
  proxy_buffers 32 4k;

  proxy_hide_header Strict-Transport-Security;
  proxy_hide_header Content-Type;
  add_header Content-Type application/json;

我想将我的 nginx 配置转换为 kubernetes ingress-nginx(入口资源)。有没有办法使用 kubernetes Ingress 资源来实现这个配置?阅读 ingress-nginx 文档我还没有找到如何将 proxy_pass 或多次重写映射到 Ingress 资源。我将不胜感激参考一些具有类似配置的详细文档或示例。

【问题讨论】:

  • 你需要入口规则来自定义你的配置字节路径

标签: nginx kubernetes nginx-ingress


【解决方案1】:

是的,可以按照 nginxinc 的 NGINX Ingress Controller 文档中的 here 解释,使用片段和自定义模板来实现。

通过 ConfigMap 使用 Snippets 的示例:

---
# Source: nginx-ingress/templates/controller-configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
  name: nginx-config
  labels:
    app.kubernetes.io/name: nginx-ingress
    helm.sh/chart: nginx-ingress-0.3.4
    app.kubernetes.io/managed-by: Tiller
    app.kubernetes.io/instance: RELEASE-NAME
data:
   server-snippets: |
    location /helloworld {
      proxy_redirect off;
      proxy_http_version 1.1;
    }

【讨论】:

    猜你喜欢
    • 2022-01-15
    • 2020-01-03
    • 2021-12-28
    • 1970-01-01
    • 1970-01-01
    • 2019-09-30
    • 1970-01-01
    • 1970-01-01
    • 2015-05-25
    相关资源
    最近更新 更多