Skip to content

cert manager config

Hleb Kanonik edited this page Mar 6, 2026 · 1 revision

Using Cert-Manager to manage certificates

Overview

You can use Cert-Manager to manage certificates for your domain name.

Detailed instructions on how to install and configure Cert-Manager can be found in the official documentation.

Install Cert-Manager

kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.8.2/cert-manager.yaml

This will install the latest version of Cert-Manager.

Check the installation:

kubectl -n cert-manager get all

Create an Issuer resource

Create a file called letsencrypt.yaml with the following content:

# letsencrypt.yaml
apiVersion: cert-manager.io/v1
kind: Issuer
metadata:
  name: letsencrypt
spec:
  acme:
    server: https://acme-v02.api.letsencrypt.org/directory
    email: {EMAIL_ADDRESS} # Replace this with your email address
    privateKeySecretRef:
      name: letsencrypt
    solvers:
    - http01:
        ingress:
          name: {APP_NAME}-gateway-ingress

Apply the configuration:

kubectl apply -f letsencrypt.yaml

Configure the Ingress resource

Open the Ingress resource for editing:

kubectl edit ingress {APP_NAME}-gateway-ingress

Add the following annotations:

...
metadata:
  annotations:
    cert-manager.io/issuer: letsencrypt
...

Add the following tls section if it does not exist:

spec:
  tls:
  - secretName: {APP_NAME}-gateway-tls
    hosts:
      - example.com
...

After saving the changes, Cert-Manager will automatically request a certificate from Let's Encrypt and store it in the APP_NAME-gateway-tls secret.

Read more about Cert-Manager and Let's Encrypt integration in the official documentation.

Clone this wiki locally