GithubHelp home page GithubHelp logo

traefik / traefik-helm-chart Goto Github PK

View Code? Open in Web Editor NEW
1.0K 24.0 743.0 1.13 MB

Traefik Proxy Helm Chart

Home Page: https://traefik.io

License: Apache License 2.0

Makefile 2.52% Smarty 84.31% Mustache 11.72% Shell 1.45%
traefik-v2 traefik helm-chart kubernetes

traefik-helm-chart's Introduction

Traefik

Build Status SemaphoreCI Docs Go Report Card License Join the community support forum at https://community.traefik.io/ Twitter

Traefik (pronounced traffic) is a modern HTTP reverse proxy and load balancer that makes deploying microservices easy. Traefik integrates with your existing infrastructure components (Docker, Swarm mode, Kubernetes, Consul, Etcd, Rancher v2, Amazon ECS, ...) and configures itself automatically and dynamically. Pointing Traefik at your orchestrator should be the only configuration step you need.


. Overview . Features . Supported backends . Quickstart . Web UI . Documentation .

. Support . Release cycle . Contributing . Maintainers . Credits .


⚠️ Please be aware that the old configurations for Traefik v1.x are NOT compatible with the v2.x config as of now. If you're running v2, please ensure you are using a v2 configuration.

Overview

Imagine that you have deployed a bunch of microservices with the help of an orchestrator (like Swarm or Kubernetes) or a service registry (like etcd or consul). Now you want users to access these microservices, and you need a reverse proxy.

Traditional reverse-proxies require that you configure each route that will connect paths and subdomains to each microservice. In an environment where you add, remove, kill, upgrade, or scale your services many times a day, the task of keeping the routes up to date becomes tedious.

This is when Traefik can help you!

Traefik listens to your service registry/orchestrator API and instantly generates the routes so your microservices are connected to the outside world -- without further intervention from your part.

Run Traefik and let it do the work for you! (But if you'd rather configure some of your routes manually, Traefik supports that too!)

Architecture

Features

  • Continuously updates its configuration (No restarts!)
  • Supports multiple load balancing algorithms
  • Provides HTTPS to your microservices by leveraging Let's Encrypt (wildcard certificates support)
  • Circuit breakers, retry
  • See the magic through its clean web UI
  • Websocket, HTTP/2, gRPC ready
  • Provides metrics (Rest, Prometheus, Datadog, Statsd, InfluxDB 2.X)
  • Keeps access logs (JSON, CLF)
  • Fast
  • Exposes a Rest API
  • Packaged as a single binary file (made with ❤️ with go) and available as an official docker image

Supported Backends

Quickstart

To get your hands on Traefik, you can use the 5-Minute Quickstart in our documentation (you will need Docker).

Web UI

You can access the simple HTML frontend of Traefik.

Web UI Providers

Documentation

You can find the complete documentation of Traefik v2 at https://doc.traefik.io/traefik/.

A collection of contributions around Traefik can be found at https://awesome.traefik.io.

Support

To get community support, you can:

  • join the Traefik community forum: Join the chat at https://community.traefik.io/

If you need commercial support, please contact Traefik.io by mail: mailto:[email protected].

Download

./traefik --configFile=traefik.toml
docker run -d -p 8080:8080 -p 80:80 -v $PWD/traefik.toml:/etc/traefik/traefik.toml traefik
  • Or get the sources:
git clone https://github.com/traefik/traefik

Introductory Videos

You can find high level and deep dive videos on videos.traefik.io.

Maintainers

We are strongly promoting a philosophy of openness and sharing, and firmly standing against the elitist closed approach. Being part of the core team should be accessible to anyone who is motivated and want to be part of that journey! This document describes how to be part of the maintainers' team as well as various responsibilities and guidelines for Traefik maintainers. You can also find more information on our process to review pull requests and manage issues in this document.

Contributing

If you'd like to contribute to the project, refer to the contributing documentation.

Please note that this project is released with a Contributor Code of Conduct. By participating in this project, you agree to abide by its terms.

Release Cycle

  • We usually release 3/4 new versions (e.g. 1.1.0, 1.2.0, 1.3.0) per year.
  • Release Candidates are available before the release (e.g. 1.1.0-rc1, 1.1.0-rc2, 1.1.0-rc3, 1.1.0-rc4, before 1.1.0).
  • Bug-fixes (e.g. 1.1.1, 1.1.2, 1.2.1, 1.2.3) are released as needed (no additional features are delivered in those versions, bug-fixes only).

Each version is supported until the next one is released (e.g. 1.1.x will be supported until 1.2.0 is out).

We use Semantic Versioning.

Mailing Lists

Credits

Kudos to Peka for his awesome work on the gopher's logo!.

The gopher's logo of Traefik is licensed under the Creative Commons 3.0 Attributions license.

The gopher's logo of Traefik was inspired by the gopher stickers made by Takuya Ueda. The original Go gopher was designed by Renee French.

traefik-helm-chart's People

Contributors

baarde avatar brandond avatar carles-figuerola avatar charlie-haley avatar darkweaver87 avatar davhdavh avatar davidalger avatar dduportal avatar dirtycajunrice avatar dtomcej avatar eddykaya avatar elthariel avatar faust64 avatar grieshaber avatar hesstobi avatar jakubhajek avatar jnoordsij avatar kevinpollet avatar kevtainer avatar ldez avatar mloiseleur avatar mmatur avatar mojochao avatar project0 avatar renebarbosafl avatar renovate[bot] avatar santode avatar steven-sheehy avatar tommoulard avatar x0ddf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

traefik-helm-chart's Issues

Persistent volume claim

Can the chart be updated to use PVC to store the certs. right now every time the pod restarts it has to get certs from lets encrypt

Security concern: API/Dashboard should not be exposed on entry "web" by default

Hi, Traefik API/dashboard is turned on and exposed on entry web by default, which is kind of scary, since the whole Internet may access them.

https://github.com/containous/traefik-helm-chart/blob/76cc1a80eefe0a00d17c2c5c71340cead1bad22e/traefik/templates/dashboard-hook-ingressroute.yaml#L13-L21

I propose to expose them on entry treafik to avoid bad things happen.

https://github.com/containous/traefik-helm-chart/blob/76cc1a80eefe0a00d17c2c5c71340cead1bad22e/traefik/values.yaml#L35-L45

I would like to draft a small PR if you guys consider it a good idea.

Brilliant work. I am enjoying it. Thank you.

Adding catch-all router for SSL enforcement?

Hello! I am trying to implement the 'I want HTTPS redirection!' section of this blog post into helm, and I'm having some issues with routes not automatically receiving the middleware.
This is how im setting it up, in traefik-helm-chart/templates/httpsRedirect.yaml:

{{- if .Values.sslEnforced }}
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
  name: redirect-to-https
spec:
  redirectScheme:
    scheme: https

---

apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: {{ template "traefik.fullname" . }}-httpsredirect
  labels:
    app: {{ template "traefik.name" . }}
    chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
    release: {{ .Release.Name | quote }}
    heritage: {{ .Release.Service | quote }}
spec:
  entryPoints:
    - web
  routes:
  - match: hostregexp(`{host:.+}`)
    kind: rule
    middlewares:
    - name: redirect-to-https
{{- end -}}

When I run helm template, the resources are rendered like this:

apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
  name: redirect-to-https
spec:
  redirectScheme:
    scheme: https

---

apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: release-name-dts-traefik-httpsredirect
  labels:
    app: dts-traefik
    chart: "dts-traefik-3.1.0"
    release: "release-name"
    heritage: "Tiller"
spec:
  entryPoints:
    - web
  routes:
  - match: hostregexp(`{host:.+}`)
    kind: rule
    middlewares:
    - name: redirect-to-https

and the resource I get on my cluster looks like this:

Name:         dts-traefik-httpsredirect
Namespace:    ingress-merd
Labels:       app=dts-traefik
              chart=dts-traefik-3.1.0
              heritage=Tiller
              release=dts-traefik
Annotations:  <none>
API Version:  traefik.containo.us/v1alpha1
Kind:         IngressRoute
Metadata:
  Creation Timestamp:  2020-01-24T21:09:59Z
  Generation:          4
  Resource Version:    6185161
Spec:
  Entry Points:
    web
  Routes:
    Kind:   rule
    Match:  hostregexp(`{host:.+}`)
    Middlewares:
      Name:  redirect-to-https
Events:      <none>

But when I look at the web dashboard, none of my HTTP routers have this middleware applied.
All of my routers run subdomains like Host(something.something.domain.com)

Has anybody tried implementing this in their cluster? Any luck?

IngressRoute dashboard not created

I've issue with the actual helm chart. IngressRoute for dashboard is not create

If I comment annotation in IngressRoute, everything work fine

  annotations:
    helm.sh/hook: "post-install"

values.yaml

dashboard:
  # Enable the dashboard on Traefik
  enable: true

  # Expose the dashboard and api through an ingress route at /dashboard
  # and /api This is not secure and SHOULD NOT be enabled on production
  # deployments
  ingressRoute: true
Logs from tiller (without comment)
[tiller] 2020/01/03 16:18:02 preparing update for traefik
[storage] 2020/01/03 16:18:02 getting deployed releases from "traefik" history
[storage] 2020/01/03 16:18:02 getting last revision of "traefik"
[storage] 2020/01/03 16:18:02 getting release history for "traefik"
[tiller] 2020/01/03 16:18:02 rendering traefik chart using values
[kube] 2020/01/03 16:18:02 warning: failed to load schema: SchemaError(io.k8s.api.authorization.v1beta1.SubjectAccessReviewStatus): invalid object doesn't have additional properties
[tiller] 2020/01/03 16:18:02 creating updated release for traefik
[storage] 2020/01/03 16:18:02 creating release "traefik.v8"
[tiller] 2020/01/03 16:18:02 performing update for traefik
[tiller] 2020/01/03 16:18:02 executing 1 pre-upgrade hooks for traefik
[tiller] 2020/01/03 16:18:02 hooks complete for pre-upgrade traefik
[kube] 2020/01/03 16:18:02 warning: failed to load schema: SchemaError(io.k8s.api.authorization.v1beta1.SubjectAccessReviewStatus): invalid object doesn't have additional properties
[kube] 2020/01/03 16:18:02 building resources from updated manifest
[kube] 2020/01/03 16:18:02 warning: failed to load schema: SchemaError(io.k8s.api.authorization.v1beta1.SubjectAccessReviewStatus): invalid object doesn't have additional properties
[kube] 2020/01/03 16:18:02 checking 10 resources for changes
[kube] 2020/01/03 16:18:02 Looks like there are no changes for ServiceAccount "traefik"
[kube] 2020/01/03 16:18:02 Looks like there are no changes for CustomResourceDefinition "ingressroutes.traefik.containo.us"
[kube] 2020/01/03 16:18:02 Looks like there are no changes for CustomResourceDefinition "ingressroutetcps.traefik.containo.us"
[kube] 2020/01/03 16:18:02 Looks like there are no changes for CustomResourceDefinition "middlewares.traefik.containo.us"
[kube] 2020/01/03 16:18:02 Looks like there are no changes for CustomResourceDefinition "tlsoptions.traefik.containo.us"
[kube] 2020/01/03 16:18:02 Looks like there are no changes for CustomResourceDefinition "traefikservices.traefik.containo.us"
[kube] 2020/01/03 16:18:02 Looks like there are no changes for ClusterRole "traefik"
[kube] 2020/01/03 16:18:02 Looks like there are no changes for ClusterRoleBinding "traefik"
[kube] 2020/01/03 16:18:02 Looks like there are no changes for Service "traefik"
[kube] 2020/01/03 16:18:02 Looks like there are no changes for DaemonSet "traefik"
[tiller] 2020/01/03 16:18:02 executing 1 post-upgrade hooks for traefik
[tiller] 2020/01/03 16:18:02 hooks complete for post-upgrade traefik
[storage] 2020/01/03 16:18:02 updating release "traefik.v7"
[tiller] 2020/01/03 16:18:02 updating status for updated release for traefik
[storage] 2020/01/03 16:18:02 updating release "traefik.v8"
[storage] 2020/01/03 16:18:02 getting last revision of "traefik"
[storage] 2020/01/03 16:18:02 getting release history for "traefik"
[kube] 2020/01/03 16:18:02 warning: failed to load schema: SchemaError(io.k8s.api.authorization.v1beta1.SubjectAccessReviewStatus): invalid object doesn't have additional properties
[kube] 2020/01/03 16:18:02 Doing get for ServiceAccount: "traefik"
[kube] 2020/01/03 16:18:02 get relation pod of object: default/ServiceAccount/traefik
[kube] 2020/01/03 16:18:02 Doing get for CustomResourceDefinition: "ingressroutes.traefik.containo.us"
[kube] 2020/01/03 16:18:02 get relation pod of object: /CustomResourceDefinition/ingressroutes.traefik.containo.us
[kube] 2020/01/03 16:18:02 Doing get for CustomResourceDefinition: "ingressroutetcps.traefik.containo.us"
[kube] 2020/01/03 16:18:02 get relation pod of object: /CustomResourceDefinition/ingressroutetcps.traefik.containo.us
[kube] 2020/01/03 16:18:02 Doing get for CustomResourceDefinition: "middlewares.traefik.containo.us"
[kube] 2020/01/03 16:18:02 get relation pod of object: /CustomResourceDefinition/middlewares.traefik.containo.us
[kube] 2020/01/03 16:18:02 Doing get for CustomResourceDefinition: "tlsoptions.traefik.containo.us"
[kube] 2020/01/03 16:18:02 get relation pod of object: /CustomResourceDefinition/tlsoptions.traefik.containo.us
[kube] 2020/01/03 16:18:02 Doing get for CustomResourceDefinition: "traefikservices.traefik.containo.us"
[kube] 2020/01/03 16:18:02 get relation pod of object: /CustomResourceDefinition/traefikservices.traefik.containo.us
[kube] 2020/01/03 16:18:02 Doing get for ClusterRole: "traefik"
[kube] 2020/01/03 16:18:02 get relation pod of object: /ClusterRole/traefik
[kube] 2020/01/03 16:18:02 Doing get for ClusterRoleBinding: "traefik"
[kube] 2020/01/03 16:18:02 get relation pod of object: /ClusterRoleBinding/traefik
[kube] 2020/01/03 16:18:02 Doing get for Service: "traefik"
[kube] 2020/01/03 16:18:02 get relation pod of object: default/Service/traefik
[kube] 2020/01/03 16:18:02 Doing get for DaemonSet: "traefik"
[kube] 2020/01/03 16:18:02 get relation pod of object: default/DaemonSet/traefik
Logs from tiller (with comment)
[tiller] 2020/01/03 16:18:58 preparing update for traefik
[storage] 2020/01/03 16:18:58 getting deployed releases from "traefik" history
[storage] 2020/01/03 16:18:58 getting last revision of "traefik"
[storage] 2020/01/03 16:18:58 getting release history for "traefik"
[tiller] 2020/01/03 16:18:58 rendering traefik chart using values
[kube] 2020/01/03 16:18:58 warning: failed to load schema: SchemaError(io.k8s.api.authorization.v1beta1.SubjectAccessReviewStatus): invalid object doesn't have additional properties
[tiller] 2020/01/03 16:18:58 creating updated release for traefik
[storage] 2020/01/03 16:18:58 creating release "traefik.v9"
[tiller] 2020/01/03 16:18:58 performing update for traefik
[tiller] 2020/01/03 16:18:58 executing 0 pre-upgrade hooks for traefik
[tiller] 2020/01/03 16:18:58 hooks complete for pre-upgrade traefik
[kube] 2020/01/03 16:18:58 warning: failed to load schema: SchemaError(io.k8s.api.authorization.v1beta1.SubjectAccessReviewStatus): invalid object doesn't have additional properties
[kube] 2020/01/03 16:18:58 building resources from updated manifest
[kube] 2020/01/03 16:18:58 warning: failed to load schema: SchemaError(io.k8s.api.authorization.v1beta1.SubjectAccessReviewStatus): invalid object doesn't have additional properties
[kube] 2020/01/03 16:18:58 checking 11 resources for changes
[kube] 2020/01/03 16:18:58 Looks like there are no changes for ServiceAccount "traefik"
[kube] 2020/01/03 16:18:59 Looks like there are no changes for CustomResourceDefinition "ingressroutes.traefik.containo.us"
[kube] 2020/01/03 16:18:59 Looks like there are no changes for CustomResourceDefinition "ingressroutetcps.traefik.containo.us"
[kube] 2020/01/03 16:18:59 Looks like there are no changes for CustomResourceDefinition "middlewares.traefik.containo.us"
[kube] 2020/01/03 16:18:59 Looks like there are no changes for CustomResourceDefinition "tlsoptions.traefik.containo.us"
[kube] 2020/01/03 16:18:59 Looks like there are no changes for CustomResourceDefinition "traefikservices.traefik.containo.us"
[kube] 2020/01/03 16:18:59 Looks like there are no changes for ClusterRole "traefik"
[kube] 2020/01/03 16:18:59 Looks like there are no changes for ClusterRoleBinding "traefik"
[kube] 2020/01/03 16:18:59 Looks like there are no changes for Service "traefik"
[kube] 2020/01/03 16:18:59 Looks like there are no changes for DaemonSet "traefik"
[kube] 2020/01/03 16:18:59 Created a new IngressRoute called "traefik-dashboard"
[tiller] 2020/01/03 16:18:59 executing 0 post-upgrade hooks for traefik
[tiller] 2020/01/03 16:18:59 hooks complete for post-upgrade traefik
[storage] 2020/01/03 16:18:59 updating release "traefik.v8"
[tiller] 2020/01/03 16:18:59 updating status for updated release for traefik
[storage] 2020/01/03 16:18:59 updating release "traefik.v9"
[storage] 2020/01/03 16:18:59 getting last revision of "traefik"
[storage] 2020/01/03 16:18:59 getting release history for "traefik"
[kube] 2020/01/03 16:18:59 warning: failed to load schema: SchemaError(io.k8s.api.authorization.v1beta1.SubjectAccessReviewStatus): invalid object doesn't have additional properties
[kube] 2020/01/03 16:18:59 Doing get for ServiceAccount: "traefik"
[kube] 2020/01/03 16:18:59 get relation pod of object: default/ServiceAccount/traefik
[kube] 2020/01/03 16:18:59 Doing get for CustomResourceDefinition: "ingressroutes.traefik.containo.us"
[kube] 2020/01/03 16:18:59 get relation pod of object: /CustomResourceDefinition/ingressroutes.traefik.containo.us
[kube] 2020/01/03 16:18:59 Doing get for CustomResourceDefinition: "ingressroutetcps.traefik.containo.us"
[kube] 2020/01/03 16:18:59 get relation pod of object: /CustomResourceDefinition/ingressroutetcps.traefik.containo.us
[kube] 2020/01/03 16:18:59 Doing get for CustomResourceDefinition: "middlewares.traefik.containo.us"
[kube] 2020/01/03 16:18:59 get relation pod of object: /CustomResourceDefinition/middlewares.traefik.containo.us
[kube] 2020/01/03 16:18:59 Doing get for CustomResourceDefinition: "tlsoptions.traefik.containo.us"
[kube] 2020/01/03 16:18:59 get relation pod of object: /CustomResourceDefinition/tlsoptions.traefik.containo.us
[kube] 2020/01/03 16:18:59 Doing get for CustomResourceDefinition: "traefikservices.traefik.containo.us"
[kube] 2020/01/03 16:18:59 get relation pod of object: /CustomResourceDefinition/traefikservices.traefik.containo.us
[kube] 2020/01/03 16:18:59 Doing get for ClusterRole: "traefik"
[kube] 2020/01/03 16:18:59 get relation pod of object: /ClusterRole/traefik
[kube] 2020/01/03 16:18:59 Doing get for ClusterRoleBinding: "traefik"
[kube] 2020/01/03 16:18:59 get relation pod of object: /ClusterRoleBinding/traefik
[kube] 2020/01/03 16:18:59 Doing get for Service: "traefik"
[kube] 2020/01/03 16:18:59 get relation pod of object: default/Service/traefik
[kube] 2020/01/03 16:18:59 Doing get for DaemonSet: "traefik"
[kube] 2020/01/03 16:18:59 get relation pod of object: default/DaemonSet/traefik
[kube] 2020/01/03 16:18:59 Doing get for IngressRoute: "traefik-dashboard"
[kube] 2020/01/03 16:18:59 get relation pod of object: default/IngressRoute/traefik-dashboard

helm version

Client: &version.Version{SemVer:"v2.10.0", GitCommit:"9ad53aac42165a5fadc6c87be0dea6b115f93090", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.10.0", GitCommit:"9ad53aac42165a5fadc6c87be0dea6b115f93090", GitTreeState:"clean"}

Be able to specify volumes and --configfile flag

In order to be able to use custom config-file from a config-map or secret it would be nice to be able to specify volumes/volumeMounts for deployment resource and --configfile="" argument in deployment args.

helm update

Helm update does not seem to update the ingressroute

Missing volume mount

I defined a volume in values.yaml, expecting it to be automatically mounted, however only the volume is defined in the final deployment.
values.yaml

volumes:
- name: traefik-configuration
  mountPath: "/config"
  type: configMap

traefik deployment:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: traefik
  [...]
spec:
  [...]
  template:
    [...]
    spec:
      containers:
      - image: traefik:2.1.3
        name: traefik
        [...]
        volumeMounts:
        - mountPath: /data
          name: data
      [...]
      volumes:
      - emptyDir: {}
        name: data
      - configMap:
          defaultMode: 420
          name: traefik-configuration
        name: traefik-configuration

Is this a bug or are you supposed to define volume mounts separately in values.yaml (if so, what is the 'mountPath' field of volumes for)?

IngressRoute not discovered by Traefik

  1. Hi, i have the following simple setup of the chart:
helm install traefik -n ingress ./ --set additionalArguments="{--api.insecure=true}
  1. Also i have a bar service from other chart in foo namespace:
apiVersion: v1
kind: Service
metadata:
  labels:
    app: bar
  name: bar
  namespace: foo
spec:
  clusterIP: 10.210.220.230
  ports:
  - name: http
    port: 5555
    protocol: TCP
    targetPort: 5555
  selector:
    app: bar
  sessionAffinity: None
  type: ClusterIP
status:
  loadBalancer: {}
  1. And Traefik IngressRoute CRD in the same namespace with bar service:
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: bar-ingressroute
  namespace: foo
spec:
  entryPoints:
  - web
  routes:
  - kind: Rule
    match: Host(`bar.my.domain`) && PathPrefix(`/`)
    services:
    - kind: Serivce
      name: bar
      namespace: foo
      passHostHeader: true
      port: 5555
      scheme: http

What i expexted:

  1. Exposed bar service on http://bar.my.domain:80

What i got:

  1. Nothing on http://bar.my.domain:80
  2. Only internal Traefik services (api@internal, dashboard@internal, ping@internal)

Cluster setup:

  1. 3 nodes
  2. Correct DNS setup from bar.my.domain to each node IP

Any ideas where i get wrong?

prevent crd's are deleted when executing helm delete

Hi,

the traefik-crd's are deleted with every helm delete. After this, every application using e.g ingressRoute is not reachable anymore. From the k8s-docs:

"When you delete a CustomResourceDefinition, the server will uninstall the RESTful API endpoint and delete all custom objects stored in it."

So I fixed this by adding the following labels to each of the 4 crd's:

  annotations:
    helm.sh/hook: "crd-install"
    helm.sh/hook-delete-policy: "before-hook-creation"

With helm.sh/hook: "crd-install" the crd is no longer treated as a part of the helm release, so the crd is untouched when the helm release is deleted.

The label helm.sh/hook-delete-policy: "before-hook-creation" is needed for helm upgrade not throwing errors ressource already exists.

So may you can add these labels to the crd's in your chart.

Thanks,

Karsten.

Helm delete does not remove everything

Versions
Helm: 2.8.2
Kubernetes: 1.17.2
OS: Ubuntu 18.04

I'm new to pretty much all the technologies involved here, so forgive me if I'm missing something obvious. But I've been trying to get Traefik 2.1 setup using this helm chart by running:
helm install --replace --name traefik21 ./traefik-helm-chart/traefik/ --values traefik-chart2.yml

Since I have no idea what I'm doing... I've also been removing it a lot. I assume that when I do helm delete traefik21 it should delete everything but it does not. In fact I'm not sure what if anything it removes. Usually I then run kubectl delete deploy traefik21 and then install again.

Is there a better way to do this?

Also in general if I have other questions (why can't I access the dashboard, why are my certs wrong, etc.). Should I open other tickets here, on the main traefik github site, or somewhere else?

Error configuring TLS: secret does not exist when trying to access a secret from another namespace

Hi,

So, when I'm trying to use a TLS configuration from another namespace, traefik can't access the secret.

NAMESPACE traefik:

  • traefik
  • cert-manager deployment

NAMESPACE other-namespace:

  • service (any web service)
  • certificate generated from cert-manager (named service-certs)
  • ingressroute

When everything is in the same namespace, I don't have any issue.
When in separated namespaces, I get this : Error configuring TLS: secret other-namespace/service-certs does not exist

Everything seems right here though : https://github.com/containous/traefik-helm-chart/blob/master/templates/rbac/clusterrole.yaml. But my knowledge in RBAC is pretty limited.

Thanks !

Readiness probe succeeds, then fails

Readiness probe failed: Get http://10.1.0.120:9000/ping: dial tcp 10.1.0.120:9000: connect: connection refused

Athough the readiness probe and liveness probe succeeded in the past.

index.yaml missing

when i try to install traefik2 without user intervention by putting this file in the manifests directory of k3s:

apiVersion: helm.cattle.io/v1
kind: HelmChart
metadata:
  name: traefik
  namespace: kube-system
spec:
  chart: stable/traefik
  repo: https://github.com/containous/traefik-helm-chart
  set:
    image.tag: "2.2"
    rbac.enabled: "true"
    ssl.enabled: "true"

i find this error in the log files:

+ helm_v3 repo add traefik https://github.com/containous/traefik-helm-chart
Error: looks like "https://github.com/containous/traefik-helm-chart" is not a valid chart repository or cannot be reached: failed to fetch https://github.com/containous/traefik-helm-chart/index.yaml : 404 Not Found

[Feature Request] Add enabled fields

Please add service.enabled, deployment.enabled, rbac.enabled and crd.enabled to traefik chart so we can install parts of the chart.

Use case

We are using pulumi to automatize the install of traefik. We install crd-s in a different project before installing the rest of the chart, because installing crd and the custom resources (eg: an IngressRoute) together causes issues. We have been using the prometheus chart similarly without issues.

Don't delete persistence volume

First off: Great work on the latest changes. I could throw away a few home-baked things in favour of your updates. 😊

The new persistence feature looks really nice. I tried it out and it works. But when I delete my Helm release, it also deletes this volume. This volume contains SSL certificates that are important and should not be thrown away that easily. I would prefer if the volume would stay intact, so you could easily do a helm delete ... and then helm install ... without losing precious SSL certificates.

feat: Add Support For Sidecar Container

It would be great if one could define a second container to run alongside traefik as a sidecar. For example this could be used to setup ForwardAuth to send traffic to a sidecar for JWT authentication

feat: File Based Provider Support

We currently require routing to services that are outside Kubernetes. Without File based provider we cant route to them, so it would be nice if in the helm chart you can pass args to enable it

Chart 3.3.0 error at upgrade

So I've upgraded to version 3.3.0 of this chart and suddenly got this error:

coalesce.go:196: warning: cannot overwrite table with non table for env (map[])

while running helm upgrade.

Install with no values errors with "(...) nil pointer evaluating interface {}.externalTrafficPolicy"

Kind of Issue

Bug

What Happens

Installing the chart with latest master (commit 0899641) without any value leads to the following error:

Error: render error in "traefik/templates/service.yaml": template: traefik/templates/service.yaml:12:53: executing "traefik/templates/service.yaml" at <.Values.service.externalTrafficPolicy>: nil pointer evaluating interface {}.externalTrafficPolicy

Expectation

As per https://github.com/containous/traefik-helm-chart/blob/master/Guidelines.md,
the chart should install without error

Reproduction

# Create a Kubernetes cluster with k3d
k3d create --publish="80:80" --publish="443:443" --server-arg="--no-deploy=traefik"
export KUBECONFIG="$(k3d get-kubeconfig --name='k3s-default')"

# Initialize Helm
kubectl create serviceaccount tiller --namespace=kube-system
kubectl create clusterrolebinding tiller --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
helm init --service-account=tiller
helm version # After 1-2 minutes, must shows both client and server initialized

# Install current Traefik helm chart, fails with error
helm install --name=traefik .

More Information

This is a Helm template issue: the default values should handle this case :)

Add annotations if Prometheus is enabled

In the current (stable/traefik) helm chart, even if Prometheus metrics are enabled, the relevant annotations (prometheus.io/scrape etc) don't get added to the Deployment. I think it'd be much more user-friendly if those annotations were added automatically.

I know that this is a repo for the traefik 2 chart, but I couldn't figure a better place to open the issue.

Publish chart to public repo

I'm trying to use this with k3's embedded Tiller and the Helm CRD, but it fails as the chart needs to be hosted in a repo somewhere. Would it be possible to publish this (even in its current status) to a public repository?

[Feature] Be able to add many traefik ingress

Hello,

I've tried to install two times the ingress, one time per namespace on a cluster, but, second time, crd are already exists, so helm 3 return an error.
Maybe is it possible to wrap crd into a condition to be able to ignore crd setup ?
In the idea, on a cluster, I want to scope two teams in their respective namespaces.

Best regards !
Gaël

Entry point redirection and default routers configuration

With the wonderful change in traefik/traefik#6417 it's now possible to configure automatic HTTP->HTTPS redirection for entrypoints. This issue proposes those changes to be configurable in the Helm chart as well.

Currently this could be done in values.yml like so:

additionalArguments:
  - --entrypoints.web.address=:80
  - --entrypoints.web.http.redirections.entryPoint.to=websecure
  - --entrypoints.web.http.redirections.entryPoint.scheme=https
  - --entrypoints.websecure.address=:443

Maybe something like it's configured in the YAML configuration:

entryPoints:
  web:
    address: :80
    http:
      redirections:
        entryPoint:
          to: websecure
          https: true

What keeps this repository from being "Production Ready"?

Hi team!

We're longtime users of the old chart and very excited to someday upgrade to 2.0. I've searched through the issues and a the pull requests to try and understand more about why the chart is labeled as not production ready. Is there any chance a contributor or maintainer could provide a little more insight into whats missing and what needs to be done?

We might be interested in participating in helping this along, as well.

IngressRouteUDP and TLSStore CRDs missing after upgrading to v2.2

Those new CRDs are missing because this Helm chart is for v2.1

https://docs.traefik.io/v2.2/reference/dynamic-configuration/kubernetes-crd/

Got the following errors:

E0309 02:11:37.883180       1 reflector.go:153] pkg/mod/k8s.io/[email protected]/tools/cache/reflector.go:105: Failed to list *v1alpha1.IngressRouteUDP: the server could not find the requested resource (get ingressrouteudps.traefik.containo.us)

E0309 02:11:38.884534       1 reflector.go:153] pkg/mod/k8s.io/[email protected]/tools/cache/reflector.go:105: Failed to list *v1alpha1.TLSStore: the server could not find the requested resource (get tlsstores.traefik.containo.us)

Created those missing CRDs and added in traefik ClusterRole both ingressrouteudps and tlsstores to resources list for traefik.containo.us apiGroup.

And it worked.

Dashboard IngressRoute not deleted

The IngressRoute of the dashboard is not deleted when you perform a helm delete .... This probably got to do with the hook usage to install this ingress route, similar like this issue: #22

Ingress rule not reachable

I've just deployed traefik:

$ helm install traefik traefik/traefik --set dashboard.ingressRoute=true

I'm using a k3d cluster with 2 workers.

Once installed traefik, I've realized there are several ingress-like resources:

$ kubectl api-resources | grep ingress
NAME               SHORTNAMES   APIGROUP               NAMESPACED   KIND
ingresses          ing          extensions             true         Ingress
ingresses          ing          networking.k8s.io      true         Ingress
ingressroutes                   traefik.containo.us    true         IngressRoute
ingressroutetcps                traefik.containo.us    true         IngressRouteTCP

First question is: Why are there so many ingress-like resources?

I'm able to get access to my just desployed traefik dashboard under localhost/dashboard.

Nevertheless, I'm installed a straightforward service I'm not able to figure out why it's not reacheable.

Here, graylog.localhost ingress description:

$ kubectl describe ingresses.networking.k8s.io graylog-web
Name:             graylog-web
Namespace:        graylog
Address:          
Default backend:  default-http-backend:80 (<none>)
Rules:
  Host               Path  Backends
  ----               ----  --------
  graylog.localhost  
                     /gelf   graylog-tcp:gelf (10.42.0.24:12201,10.42.1.33:12201)
                             graylog-web:graylog (10.42.0.24:9000,10.42.1.33:9000)
Annotations:
Events:  <none>

However, when I'm trying to get access to graylog.localhost:

$ curl graylog.localhost
404 page not found

This is the deployed traefik deployment:

$ kubectl describe deployments.apps traefik
Name:                   traefik
Namespace:              kube-system
CreationTimestamp:      Sun, 08 Mar 2020 20:51:09 +0100
Labels:                 app=traefik
                        chart=traefik-4.0.0
                        heritage=Helm
                        release=traefik
Annotations:            deployment.kubernetes.io/revision: 1
Selector:               app=traefik,release=traefik
Replicas:               1 desired | 1 updated | 1 total | 1 available | 0 unavailable
StrategyType:           RollingUpdate
MinReadySeconds:        0
RollingUpdateStrategy:  1 max unavailable, 1 max surge
Pod Template:
  Labels:           app=traefik
                    chart=traefik-4.0.0
                    heritage=Helm
                    release=traefik
  Service Account:  traefik
  Containers:
   traefik:
    Image:       traefik:2.1.3
    Ports:       9000/TCP, 8000/TCP, 8443/TCP
    Host Ports:  0/TCP, 0/TCP, 0/TCP
    Args:
      --global.checknewversion=true
      --global.sendanonymoususage=true
      --entryPoints.traefik.address=:9000
      --entryPoints.web.address=:8000
      --entryPoints.websecure.address=:8443
      --api.dashboard=true
      --ping=true
      --providers.kubernetescrd
      --log.level=WARN
    Liveness:     http-get http://:9000/ping delay=10s timeout=2s period=10s #success=1 #failure=3
    Readiness:    http-get http://:9000/ping delay=10s timeout=2s period=10s #success=1 #failure=1
    Environment:  <none>
    Mounts:       <none>
  Volumes:        <none>
Conditions:
  Type           Status  Reason
  ----           ------  ------
  Available      True    MinimumReplicasAvailable
  Progressing    True    NewReplicaSetAvailable
OldReplicaSets:  <none>
NewReplicaSet:   traefik-6c6c896889 (1/1 replicas created)
Events:
  Type    Reason             Age    From                   Message
  ----    ------             ----   ----                   -------
  Normal  ScalingReplicaSet  4d11h  deployment-controller  Scaled up replica set traefik-6c6c896889 to 1

And here you have traefik service description:

$ kubectl describe services traefik
Name:                     traefik
Namespace:                kube-system
Labels:                   app=traefik
                          chart=traefik-4.0.0
                          heritage=Helm
                          release=traefik
Annotations:              <none>
Selector:                 app=traefik,release=traefik
Type:                     LoadBalancer
IP:                       10.43.215.222
LoadBalancer Ingress:     172.20.0.2
Port:                     web  80/TCP
TargetPort:               web/TCP
NodePort:                 web  31000/TCP
Endpoints:                10.42.1.12:8000
Port:                     websecure  443/TCP
TargetPort:               websecure/TCP
NodePort:                 websecure  31856/TCP
Endpoints:                10.42.1.12:8443
Session Affinity:         None
External Traffic Policy:  Cluster
Events:                   <none>

Any ideas?

Upgrade to 2.2.0 with helm upgrade

Seems the problem still exists #95
I'm trying to upgrade to 2.2.0 with command "helm upgrade"
and getting errors in container logs:
"Failed to list *v1alpha1.TLSStore: the server could not find the requested resource"

Does it mean 'helm upgrade' doesn't work correctly?

Failing to setup traefik on AKS

Hello Today I tried to setup Traefik on AKS based on this chart.

helm version: v3.1.0
kubernetes: Client: v1.15.5, Server: v1.14.8

I did follow the steps on https://docs.traefik.io/providers/kubernetes-crd/ guide:

First I did apply the definitions and RBAC with kubectl apply -f <traefik-definitions.yml>

I created ingress resource:

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: traefik
spec:
  rules:
  - http:
      paths:
      - backend:
          serviceName: eps-backend
          servicePort: 80
        path: /api(/|$)(.*)
      - backend:
          serviceName: eps-frontend
          servicePort: 80
        path: /(.*)

I installed the helm chart with:

helm repo add traefik https://containous.github.io/traefik-helm-chart
helm repo update
helm install traefik traefik/traefik

Then created the resources:

k apply -f resources.yaml
traefikservice.traefik.containo.us/wrr2 created
traefikservice.traefik.containo.us/wrr1 created
traefikservice.traefik.containo.us/mirror1 created
traefikservice.traefik.containo.us/mirror2 created
ingressroute.traefik.containo.us/ingressroute created
ingressroutetcp.traefik.containo.us/ingressroutetcp.crd created

Now I see:

kubectl get svc
NAME           TYPE           CLUSTER-IP     EXTERNAL-IP     PORT(S)                                                 AGE
eps-backend    ClusterIP      10.0.130.159   <none>          8008/TCP                                                6d
eps-frontend   ClusterIP      10.0.132.30    <none>          8000/TCP                                                6d
traefik        LoadBalancer   10.0.48.58     51.136.73.219   80:30263/TCP,443:30651/TCP                              13m

kubectl get pods
NAME                            READY   STATUS    RESTARTS   AGE
eps-backend-d8469f576-cxd89     1/1     Running   0          25h
eps-frontend-6b4c5b7c58-9v5vd   1/1     Running   0          25h
traefik-7bbdfbf9d7-x6sch        1/1     Running   0          15m
 
kubectl describe ing traefik
Name:             traefik
Namespace:        default
Address:
Default backend:  default-http-backend:80 (<none>)
Rules:
  Host  Path  Backends
  ----  ----  --------
  *
        /api(/|$)(.*)   eps-backend:80 ()
        /(.*)           eps-frontend:80 ()
Annotations:
  kubectl.kubernetes.io/last-applied-configuration:  {"apiVersion":"networking.k8s.io/v1beta1","kind":"Ingress","metadata":{"annotations":{},"name":"traefik","namespace":"default"},"spec":{"rules":[{"http":{"paths":[{"backend":{"serviceName":"eps-backend","servicePort":80},"path":"/api(/|$)(.*)"},{"backend":{"serviceName":"eps-frontend","servicePort":80},"path":"/(.*)"}]}}]}}

Events:  <none>

When I head to my IP http://51.136.73.219/traefik it displays 404 page not found

When I look Into kubectl logs traefik-7bbdfbf9d7-x6sch

time="2020-03-24T16:22:33Z" level=error msg="<nil>" namespace=default providerName=kubernetescrd ingress=ingressroute
time="2020-03-24T16:22:33Z" level=error msg="Unsupported match kind: . Only \"Rule\" is supported for now." providerName=kubernetescrd ingress=ingressroute namespace=default
time="2020-03-24T16:22:33Z" level=error msg="Unsupported match kind: . Only \"Rule\" is supported for now." namespace=default providerName=kubernetescrd ingress=ingressroute
time="2020-03-24T16:22:33Z" level=error msg="Unsupported match kind: . Only \"Rule\" is supported for now." namespace=default providerName=kubernetescrd ingress=ingressroute
time="2020-03-24T16:22:33Z" level=error msg="Unsupported match kind: . Only \"Rule\" is supported for now." ingress=ingressroute namespace=default providerName=kubernetescrd
time="2020-03-24T16:22:33Z" level=error msg="Error configuring TLS: secret default/foosecret does not exist" namespace=default providerName=kubernetescrd ingress=ingressroutetcp.crd
time="2020-03-24T16:22:33Z" level=error msg="Cannot create service: service not found" serviceName=whoamitcp servicePort=8080 ingress=ingressroutetcp.crd namespace=default providerName=kubernetescrd
time="2020-03-24T16:22:33Z" level=error msg="Error while building TraefikService: kubernetes service not found: default/s1" serviceName=wrr2 providerName=kubernetescrd
time="2020-03-24T16:22:33Z" level=error msg="Error while building TraefikService: kubernetes service not found: default/s3" providerName=kubernetescrd serviceName=wrr1
time="2020-03-24T16:22:33Z" level=error msg="Error while building TraefikService: kubernetes service not found: default/s1" providerName=kubernetescrd serviceName=mirror1
time="2020-03-24T16:22:33Z" level=error msg="Error while building TraefikService: kubernetes service not found: default/s2" providerName=kubernetescrd serviceName=mirror2

What steps did I do wrong? Why is the dashboard not accessible on http://51.138.48.137/traefik ?
What rules can be given in ingress resource?

Disabling dashboard ingressroute does not delete it

If during initial setup you go with default settings then dashboard ingressroute is created. If you disable it afterwards and apply, ingressroute is still present and accessible.
I assume, if you disable dashboard, this ingress route should be deleted, even diff is showing that it will be deleted.
I suspect that actual problem is that the this route is created as hook.

How to configure static config file

I want to configure ingressClass and namespaces that ingress controller is listening.
I couldn't find any parameter for that in values.yaml I was thinking about passing those parameters as environment values but the Chart is not prepared to configure extraEnv.

What is the better way to configure static config within values.yaml?

traefik-dashboard targetPort is traefik

I installed the current chart and wanted to access the traefik-dashboard.

The targetPort is set to targetPort: traefik and not as I would expect the port 9000

---
apiVersion: v1
kind: Service
metadata:
  creationTimestamp: "2019-10-25T14:51:40Z"
  labels:
    app: traefik
    chart: traefik-2.0.0
    heritage: Tiller
    release: traefik
  name: traefik-dashboard
  namespace: traefik
  resourceVersion: "3318720531"
  selfLink: /api/v1/namespaces/traefik/services/traefik-dashboard
  uid: 5489b487-be09-4bca-aa29-faf3999257e9
spec:
  clusterIP: 10.41.33.88
  ports:
  - name: traefik
    port: 80
    protocol: TCP
    targetPort: traefik
  selector:
    app: traefik
    release: traefik
  sessionAffinity: None
  type: ClusterIP
status:
  loadBalancer: {}

EntryPoints limited to "web"

https://github.com/containous/traefik-helm-chart/blob/27a3e7b574bae576a507e027c06b4e5043185720/traefik/templates/dashboard-hook-ingressroute.yaml#L14-L15

According to the Traefik docs:

If not specified, HTTP routers will accept requests from all defined entry points. If you want to limit the router scope to a set of entry points, set the entryPoints option.

Can these lines be omitted (or templated) for folks like me who would like to use another or a different entryPoint? In my case, my domain name has HSTS, so I am almost always accessing it through websecure.

Happy to submit a PR if this is an acceptable change.

Expose hostNetwork customization

Opening issue for discussion as requested in #49.

I want to be able to run Traefik in the host network namespace when I deploy it with this chart for the following potential scenarios:

  • I don't want to use a cloud provider load balancer in front of Traefik due to cost or redundancy.
  • I want to run Traefik on bare metal and don't have the option of fronting it with another load balancer.
  • I need my Traefik pods to have the Node IP as the Pod IP (to use with, for example, https://github.com/kubernetes-sigs/external-dns which will automatically create a DNS record pointing to that IP)

For any or all of these use cases, I need to be able to run my Traefik pod in the host network because:

  • binding to port 80/443 is restricted (by default k8s only allows NodePort > 3000)

As noted in the Traefik Team reply here and included in my original PR, this will also require some anti-affinity rules to be added to force Traefik pods to spread out among the nodes.

@mmatur do you have any questions about this?

Change deployment & service for udp support

There should be support to add /udp to --entrypoint in the deployment, this should result in multiple changes to container ports and service port, i suggest to make it simple and add protocol to ports:

Service deployment fails when using a loadBalancerIP

When using the values.yaml, the user will tend to uncomment some attributes to be used in the Helm chart.

Currently the values.yaml generates a YAML with an incorrect syntax when specifying a loadBalancerIP entry.

# helm install --name traefik-v22 \
#       --namespace=traefik-v2 ./traefik-helm-chart \
#       --debug --dry-run \
#       --set service.spec.loadBalancerIp=192.168.168.44

[....]

# Source: traefik/templates/service.yaml
apiVersion: v1
kind: Service
metadata:
  name: traefik-v22
  labels:
    app: traefik
    chart: "traefik-2.2.2"
    release: "traefik-v22"
    heritage: "Tiller"
spec:
  type: LoadBalancer
  loadBalancerIp: 192.168.168.44 <----- error when deploying
  
  selector:
    app: traefik
    release: traefik-v22
  ports:
  - port: 80
    name: web
    targetPort: "web"
  - port: 443
    name: websecure
    targetPort: "websecure"

It should be:

# Source: traefik/templates/service.yaml
apiVersion: v1
kind: Service
metadata:
  name: traefik-v22
  labels:
    app: traefik
    chart: "traefik-2.2.2"
    release: "traefik-v22"
    heritage: "Tiller"
spec:
  type: LoadBalancer
  loadBalancerIP: 192.168.168.44 <---- works  fine
  
  selector:
    app: traefik
    release: traefik-v22
  ports:
  - port: 80
    name: web
    targetPort: "web"
  - port: 443
    name: websecure
    targetPort: "websecure"

Traefik 3.x Helm Chart

Do you want to request a feature or report a bug?

Install Feature : Helm 3.x Install Chart

What did you expect to see?

I am deploying to k3s - and that Kubernetes Distro from Rancher has now moved to Helm 3 charts.

Would it be possible to expedite the development of a Helm 3 chart for Traefik so that K3S may move forward in picking up Traefik 2 (and migrating from Traefik 1.x) either as an option or well documented manual custom process.

Fresh installing K3S --without-traefik AND downgrading Helm to V2 is more hacking than is ideal.

How to start traefik dashboard?

In general, I would do:

helm install traefik traefik/traefik --set dashboard.ingressRoute="true"

By digging I tried

helm install traefik traefik/traefik --set="{--dashboard.ingressRoute=true}"

But it won't work at all.

What are the guides here?

Setting Dashboard Domain

Was attempting to migrate from the stable 1.7 to the latest of this chart.

Where the heck did you guys put this?

Everything else works fine, far as I can tell, but I want my dashboard domain!
How else am I supposed to access my dashboard? I literally can't find it, and it's defaulted to enabled.

Please put that config option back.

namespace "production" is ignored in cross-provider context

  1. Create namespace
kubectl create namespace traefik
  1. Install chart
helm install --namespace=traefik \
  --set additionalArguments="{--providers.kubernetesingress,--global.checknewversion=true}" \
  traefik ./traefik
  1. Follow logs of traefik pod
time="2019-12-05T17:56:17Z" level=warning msg="namespace \"production\" is ignored in cross-provider context" providerName=kubernetescrd serviceName=api@internal
time="2019-12-05T17:56:17Z" level=warning msg="namespace \"production\" is ignored in cross-provider context" providerName=kubernetescrd serviceName=api@internal
time="2019-12-05T17:56:17Z" level=warning msg="namespace \"production\" is ignored in cross-provider context" serviceName=api@internal providerName=kubernetescrd
time="2019-12-05T17:56:18Z" level=warning msg="namespace \"production\" is ignored in cross-provider context" providerName=kubernetescrd serviceName=api@internal
time="2019-12-05T17:56:19Z" level=warning msg="namespace \"production\" is ignored in cross-provider context" providerName=kubernetescrd serviceName=api@internal
time="2019-12-05T17:56:19Z" level=warning msg="namespace \"production\" is ignored in cross-provider context" providerName=kubernetescrd serviceName=api@internal
time="2019-12-05T17:56:19Z" level=warning msg="namespace \"production\" is ignored in cross-provider context" providerName=kubernetescrd serviceName=api@internal
time="2019-12-05T17:56:19Z" level=warning msg="namespace \"production\" is ignored in cross-provider context" providerName=kubernetescrd serviceName=api@internal
time="2019-12-05T17:56:20Z" level=warning msg="namespace \"production\" is ignored in cross-provider context" providerName=kubernetescrd serviceName=api@internal
time="2019-12-05T17:56:21Z" level=warning msg="namespace \"production\" is ignored in cross-provider context" serviceName=api@internal providerName=kubernetescrd
time="2019-12-05T17:56:21Z" level=warning msg="namespace \"production\" is ignored in cross-provider context" providerName=kubernetescrd serviceName=api@internal
time="2019-12-05T17:56:21Z" level=warning msg="namespace \"production\" is ignored in cross-provider context" providerName=kubernetescrd serviceName=api@internal
^CGot error: signal: interrupt

Any explanation about it?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.