Back to Charts

kube-lego

stable/kube-lego/README.md

latest3.4 KB
Original Source

kube-lego

kube-lego automatically requests certificates for Kubernetes Ingress resources from Let's Encrypt.

:warning:

kube-lego is in maintenance mode only. There is no plan to support any new features. The latest Kubernetes release that kube-lego officially supports is 1.8. The officially endorsed successor is cert-manager.

If you are a current user of kube-lego, you can find a migration guide here.

:warning:

TL;DR;

console
$ helm install stable/kube-lego

Introduction

This chart bootstraps a kube-lego deployment on a Kubernetes cluster using the Helm package manager.

Prerequisites

  • Kubernetes 1.4+ with Beta APIs enabled

Installing the Chart

To install the chart with the release name my-release:

console
$ helm install --name my-release stable/kube-lego --set [email protected]

NOTE: config.LEGO_EMAIL is required

The command deploys kube-lego on the Kubernetes cluster in the default configuration. The configuration section lists the parameters that can be configured during installation.

Tip: List all releases using helm list

Uninstalling the Chart

To uninstall/delete the my-release deployment:

console
$ helm delete my-release

The command removes all the Kubernetes components associated with the chart and deletes the release.

Configuration

The following table lists the configurable parameters of the chart and their default values.

ParameterDescriptionDefault
config.LEGO_EMAILemail address to use for registration with Let's Encryptnone
config.LEGO_URLLet's Encrypt API endpoint. To get "real" certificates set to the production API of Let's Encrypt: https://acme-v01.api.letsencrypt.org/directoryhttps://acme-staging.api.letsencrypt.org/directory (staging)
config.LEGO_PORTkube-lego port8080
config.LEGO_SUPPORTED_INGRESS_CLASSWhich ingress class to watchnone
config.LEGO_SUPPORTED_INGRESS_PROVIDERWhich ingress provider is being usednone
config.LEGO_DEFAULT_INGRESS_CLASSWhat ingress class should something be if no ingress class is specifiednone
image.repositorykube-lego container image repositoryjetstack/kube-lego
image.tagkube-lego container image tag0.1.3
image.pullPolicykube-lego container image pull policyIfNotPresent
nodeSelectornode labels for pod assignment{}
podAnnotationsannotations to be added to pods{}
replicaCountdesired number of pods1
resourceskube-lego resource requests and limits (YAML){}
rbac.createCreate a role and serviceaccountfalse
rbac.serviceAccountNameserviceaccount name to use if rbac.create is falsedefault

Specify each parameter using the --set key=value[,key=value] argument to helm install. For example,

console
$ helm install --name my-release \
  --set [email protected] \
    stable/kube-lego

Alternatively, a YAML file that specifies the values for the parameters can be provided while installing the chart. For example,

console
$ helm install --name my-release -f values.yaml stable/kube-lego

Tip: You can use the default values.yaml