首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用nginx代理动态进入Kubernetes服务

用nginx代理动态进入Kubernetes服务
EN

Stack Overflow用户
提问于 2019-11-11 22:37:23
回答 1查看 1.1K关注 0票数 0

我试图用nginx制作一个动态的proxy_pass,这样做如下:

  • 对foo.mywebsite.com的请求被转发到具有foo名称的

服务,向bar.mywebsite.com的

  • 请求被转发给具有条名

的服务。

我的nginx.conf工作于静态值,但与regex一起工作约5分钟,然后错误开始。

代码语言:javascript
复制
apiVersion: v1
kind: ConfigMap
metadata:
  name: nginx-config-dns-file
data:
  nginx.conf: |
    server {
      listen 80;
      server_name ~^(?<subdomain>.*?)\.;
      resolver kube-dns.kube-system.svc.cluster.local valid=5s;

      location /healthz {
        return 200;
      }

      location / {
        proxy_pass http://$subdomain.default.svc.cluster.local; 
      }
    }

我的吊舱获得的是服务ip而不是名称,这是日志

2019/11/11 22:30:40错误6#6: 163 10.default.svc.cluster.local无法解决(3:找不到主机),客户端: 10.142.0.34,服务器:~^(?),请求:"GET / HTTP/1.1",主机:"10.142.0.34“

10.是ip的起始点。我不知道出了什么问题,有人能帮我吗,谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-14 12:11:53

使用此修复

代码语言:javascript
复制
apiVersion: v1
kind: ConfigMap
metadata:
  name: nginx-config-dns-file
data:
  nginx.conf: |
    server {
      listen 80;
      server_name ~^(?<subdomain>.*?)\.;
      resolver kube-dns.kube-system.svc.cluster.local valid=5s;

      location /healthz {
        return 200;
      }

      location / {
        proxy_set_header Host $host
        proxy_pass http://$subdomain.default.svc.cluster.local; 
      }
    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58809593

复制
相关文章

相似问题

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