GithubHelp home page GithubHelp logo

aysnine / traefik-helm-chart Goto Github PK

View Code? Open in Web Editor NEW

This project forked from traefik/traefik-helm-chart

1.0 1.0 0.0 3.11 MB

Traefik v2 helm chart

License: Apache License 2.0

Makefile 19.27% Smarty 64.94% Shell 4.03% Mustache 11.76%

traefik-helm-chart's Introduction

Traefik

Traefik is a modern HTTP reverse proxy and load balancer made to deploy microservices with ease.

Introduction

This chart bootstraps Traefik version 2 as a Kubernetes ingress controller, using Custom Resources IngressRoute: https://docs.traefik.io/providers/kubernetes-crd/.

Philosophy

The Traefik HelmChart is focused on Traefik deployment configuration.

To keep this HelmChart as generic as possible we tend to avoid integrating any third party solutions nor any specific use cases.

Accordingly, the encouraged approach to fulfill your needs:

  1. override the default Traefik configuration values (yaml file or cli)
  2. append your own configurations (kubectl apply -f myconf.yaml)
  3. extend this HelmChart (as a Subchart)

Installing

Prerequisites

With the command helm version, make sure that you have:

Add Traefik's chart repository to Helm:

helm repo add traefik https://helm.traefik.io/traefik

You can update the chart repository by running:

helm repo update

Kubernetes Version Support

Due to changes in CRD version support, the following versions of the chart are usable and supported on the following Kubernetes versions:

Kubernetes v1.15 and below Kubernetes v1.16-v1.21 Kubernetes v1.22 and above
Chart v9.20.2 and below [x] [x]
Chart 10.0.0 and above [x] [x]

Deploying Traefik

helm install traefik traefik/traefik

Warning

Helm v2 support was removed in the chart version 10.0.0.

Exposing the Traefik dashboard

This HelmChart does not expose the Traefik dashboard by default, for security concerns. Thus, there are multiple ways to expose the dashboard. For instance, the dashboard access could be achieved through a port-forward :

kubectl port-forward $(kubectl get pods --selector "app.kubernetes.io/name=traefik" --output=name) 9000:9000

Accessible with the url: http://127.0.0.1:9000/dashboard/

Another way would be to apply your own configuration, for instance, by defining and applying an IngressRoute CRD (kubectl apply -f dashboard.yaml):

# dashboard.yaml
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
  name: dashboard
spec:
  entryPoints:
    - web
  routes:
    - match: Host(`traefik.localhost`) && (PathPrefix(`/dashboard`) || PathPrefix(`/api`))
      kind: Rule
      services:
        - name: api@internal
          kind: TraefikService

Accessible with the url: http://traefik.localhost/dashboard/

Contributing

If you want to contribute to this chart, please read the Contributing Guide.

traefik-helm-chart's People

Contributors

mmatur avatar santode avatar ldez avatar faust64 avatar kevinpollet avatar dtomcej avatar dirtycajunrice avatar elthariel avatar steven-sheehy avatar jakubhajek avatar dduportal avatar mojochao avatar davidalger avatar kevtainer avatar tommoulard avatar carles-figuerola avatar brandond avatar ctschubel avatar relu avatar czunker avatar rbtr avatar xcid avatar tchellomello avatar mikesir87 avatar nicolaschan avatar frezbo avatar pamri avatar rtribotte avatar ncmans avatar rbeuque74 avatar

Stargazers

Roman avatar

Watchers

James Cloos avatar

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.