Have your private key and certificate in the PEM format (e.g.
openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 365 -out certificate.pem
) and create a file calledcustom_cert.yaml
anywhere inside the cluster with the following content:Code Block apiVersion: v1 kind: Secret metadata: name: custom-default-cert namespace: kube-system type: kubernetes.io/tls data: tls.crt: $CERTIFICATE_BASE64 tls.key: $PRIVATE_KEY_BASE64 --- apiVersion: traefik.containo.us/v1alpha1 kind: TLSStore metadata: name: default namespace: kube-system spec: defaultCertificate: secretName: custom-default-cert
Replace
$CERTIFICATE_BASE64
with the base64 encoded content of your certificate (e.g.cat certificate.pem | base64
)Replace
$PRIVATE_KEY_BASE64
with the base64 encoded content of your private key (e.g.cat key.pem | base64
)
Run
kubectl apply -f custom_cert.yaml
Sources:
...