cert-manager Helm Chart
cert-manager adds certificates and certificate issuers as resource types in Kubernetes clusters, and simplifies the process of obtaining, renewing and using those certificates. The cert-manager Helm chart automates deployment and configuration of cert-manager in Kubernetes clusters using the Minimus cert-manager images.
Prerequisites
- A subscription to the Minimus images included in the chart
- A running Kubernetes cluster (v1.22 or higher is recommended)
kubectl installed and configured
- Helm v3.8 or higher for OCI support (Installation instructions)
- Cluster Admin privileges
Note: cert-manager uses Custom Resource Definitions (CRDs) for Certificates, Issuers, and related resources. You can install CRDs by adding --set cert-manager.crds.enabled=true to your helm install command, or install them separately from the cert-manager releases.
Try It Out
In this example we will deploy cert-manager on a Kubernetes cluster using the Minimus cert-manager Helm chart. cert-manager will provide automated TLS certificate management for your Kubernetes workloads.
Step 1: Start Cluster
If you have a cluster to work with, skip this step. Otherwise, start a Minikube cluster. Deployment instructions
Step 2: Create Namespace
Create a namespace:
kubectl create ns cert-manager
Step 3: Deploy the Helm Chart
Deploy the Minimus Helm chart:
helm install my-cert-manager oci://helm.mini.dev/cert-manager \
--version v1.19.4 \
--set cert-manager.crds.enabled=true \
-n cert-manager \
--wait
If you want to override the chart's defaults, go to the Values tab, save a copy locally with your changes. Deploy the chart with your overrides using -f values.yaml:
helm install my-cert-manager oci://helm.mini.dev/cert-manager \
--version v1.19.4 \
-f values.yaml \
--set cert-manager.crds.enabled=true \
-n cert-manager \
--wait
Step 4: Verify cert-manager is Running
Confirm the chart deployed successfully and cert-manager started:
kubectl get pods -n cert-manager
You should see output similar to:
NAME READY STATUS RESTARTS AGE
my-cert-manager-xxxxxxxxx-xxxxx 1/1 Running 0 2m
my-cert-manager-cainjector-xxxxxxxxx-xxxxx 1/1 Running 0 2m
my-cert-manager-webhook-xxxxxxxxx-xxxxx 1/1 Running 0 2m
Step 5: Test Certificate Issuance
Create a self-signed issuer and a test certificate to verify cert-manager is working:
cat <<EOF | kubectl apply -f -
apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
name: test-selfsigned
namespace: cert-manager
spec:
selfSigned: {}
---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: test-cert
namespace: cert-manager
spec:
secretName: test-cert-tls
issuerRef:
name: test-selfsigned
kind: Issuer
commonName: test.example.com
dnsNames:
- test.example.com
EOF
Wait for the certificate to be issued:
kubectl wait --for=condition=Ready certificate/test-cert -n cert-manager --timeout=60s
You should see:
certificate.cert-manager.io/test-cert condition met
Step 6: Clean Up
Uninstall the chart and delete the namespace to remove all resources:
helm uninstall my-cert-manager -n cert-manager
kubectl delete namespace cert-manager
Terms & Info
Trademark
This catalog is published by Minimus. All product names, logos, and marks, other than those belonging to Minimus, shown are owned by their respective rights holders and appear here only to identify the open source software each image contains. Minimus claims no ownership of those marks and implies no affiliation with, endorsement by, certification by, or sponsorship by any rights holder.
Disclaimer
Images are provided "as-is" without warranty of any kind. "Hardened" refers to the security configuration applied at the time of build and does not constitute a guarantee of ongoing security or absence of vulnerabilities. The free tier is provided without support, SLA, or guaranteed patching timelines. Security updates may be applied to paid subscriptions before or instead of free tier images. By pulling or using any image you agree to our Terms of Use.