Learn how to deploy Keycloak on a Kubernetes cluster using a Helm chart with a custom values.yaml file.
Make sure the following are already available:
- Kubernetes cluster
kubectlconfigured- Helm
- NGINX Ingress Controller installed
- cert-manager installed
- Domain name pointing to the Ingress Load Balancer (Ingress service external IP)
- cert-manager
ClusterIssuer(e.g.letsencrypt-prod)
Update the placeholders in the provided values.yaml file before deployment:
<UserName>: Admin username for Keycloak<Pass>: Password for the Keycloak admin user<DBUserName>: User name for DB<DBPass>: PassWord for PostgreSQL database<DBName>: Name of the PostgreSQL database used by Keycloak<Your-Domain>: Public domain name used to access Keycloak (must point to the Ingress Load Balancer)
NOTE: Please use kubernetes secret to store credentials in live environments.
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo updatekubectl create namespace keycloakhelm install keycloak bitnami/keycloak \
-n keycloak \
-f path/to/values.yamlOnce the pods are running and TLS is issued, access Keycloak using:
https://<Your-Domain>helm uninstall keycloak -n keycloak