Getting Started with Control Center 1.1
Note
| This is for the 1.1 pre-release version of Control Center. To view the latest stable version, see the main documentation. |
Note
| Control Center is designed to run in a production environment. For local development, see the Getting Started in a Local Environment guide. |
Prerequisites
Before you begin, make sure you have a Kubernetes cluster running and available. It can be a service like Google Kubernetes Engine (GKE), Amazon EKS, or Azure AKS.
Configure Hostnames
You’ll need to configure the hostnames for Control Center and for Keycloak (Control Center’s authentication provider). They need hostnames that are accessible from a web browser running outside the cluster.
Via your cloud provider’s dashboard, create two DNS records. Point them to your cluster’s public IP address provided by your cloud provider. If your domain is mydomain.com
, create control.mydomain.com
and auth.mydomain.com
, both pointing to the cluster’s external IP.
You should find the external IP address in your cloud provider’s dashboard. Make sure that your network security settings allow traffic to this IP on the necessary ports.
Deploying Control Center
To deploy Control Center, use the following command:
helm install control-center oci://docker.io/vaadin/control-center \
-n control-center --create-namespace \
--version 1.1.0-beta2 \
--set domain=mydomain.com \
--set user.email=example@mydomain.com \
-f values-ingress.yaml \
--wait
Replace mydomain.com
with your domain and replace email address value with your own. The email is used to create the initial user account in Control Center.
This is an example of a custom ingress configuration:
ingress:
enabled: true
className: "nginx"
hosts:
- host: "control.mydomain.com"
paths:
- path: "/"
pathType: Prefix
- host: "auth.mydomain.com"
paths:
- path: "/"
pathType: Prefix
tls:
- hosts:
- "control.mydomain.com"
- "auth.mydomain.com"
secretName: "control-center-tls"
mkcert control.mydomain.com auth.mydomain.com
This creates the cert.pem
and key.pem
files.
Accessing Control Center
Once deployed, copy the temporary password for the initial user. Run the following command to retrieve it:
kubectl -n control-center get secret control-center-user -o go-template="{{ .data.password | base64decode | println }}"
You can access Control Center through the web browser at http://control.mydomain.com
(replace "mydomain.com" with your domain).
Logging In
When you first access Control Center, you’ll be prompted to log in. Use the email you provided during deployment and the temporary password you retrieved earlier.
You’ll then be prompted to change your password and then to provide a first and last name.
Accessing the Dashboard
Upon successful authentication, you’ll be taken to the Control Center dashboard, as shown in the screenshot here.
At this point, the dashboard should notify you that no applications are available. This is because none are deployed yet. To start deploying your Vaadin applications and take full advantage of Control Center’s features, proceed to the Application Deployment documentation page.