Kubernetes tls不工作时Traefik 2 http到https重定向

Kubernetes tls不工作时Traefik 2 http到https重定向,kubernetes,traefik,traefik-ingress,Kubernetes,Traefik,Traefik Ingress,我想在一条IngressRoute中设置http到https重定向,但在尝试访问http端点时使用以下配置traefik返回404 not found错误。如果我删除了tls部分重定向工作,但tls没有 我能让两个都工作吗 traefik版本2.1.0-rc2 apiVersion: traefik.containo.us/v1alpha1 kind: IngressRoute metadata: name: console-web namespace: dev labels:

我想在一条IngressRoute中设置http到https重定向,但在尝试访问http端点时使用以下配置traefik返回404 not found错误。如果我删除了tls部分重定向工作,但tls没有

我能让两个都工作吗

traefik版本2.1.0-rc2

apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: console-web
  namespace: dev
  labels:
    app: console-web
spec:
  entryPoints:
    - web
    - websecure
  routes:
    - match: Host(`console.example.com`)
      kind: Rule
      services:
        - name: console-web
          port: 8080
      middlewares:
        - name: https-redirect
  tls:
    secretName: example-com-tls

这是一个老问题,但这可能会帮助一些人。这可能不会直接起作用,因为我没有测试它。对于kubernetes,它应该按照以下方式工作:首先定义中间件的工作方式

未测试代码

然后定义入口路由

apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: ingress1
  namespace: default
spec:
  entryPoints:
    - websecure
  routes:
    - match: Host(`somehost`)
      kind: Rule
      services:
        - name: console-web
          port: 8080
  tls:
    secretName: example-com-tls
需要两个入口,因为一个入口将流量重定向到另一个入口。我还假设,如果您没有两个端口,您可以重用前一个端口,因为它将被重定向到https。如果不起作用,请告诉我


在为docker在http端点的404问题上花费数小时之后,我发现了这个

我现在遇到了与v2.1.6相同的问题。你解决了这个问题吗?@sbratla遗憾的是,没有
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: ingress1
  namespace: default
spec:
  entryPoints:
    - websecure
  routes:
    - match: Host(`somehost`)
      kind: Rule
      services:
        - name: console-web
          port: 8080
  tls:
    secretName: example-com-tls
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: ingress2
  namespace: default
spec:
  entryPoints:
    - web
  routes:
    - match: Host(`somehost`)
      middlewares:
        - name: test-redirectscheme
      kind: Rule
      services:
        - name: console-web
          port: 80