Skip to main content
Advanced installation generates a values template with pre-filled passwords and RSA keys before deploying. Use this mode when you need to customize the deployment — for example, to connect an external PostgreSQL database or Temporal server, or to adjust resource limits. For a quick setup with auto-generated defaults, use the basic installation instead.

Advanced installation steps

1

Generate the values template

cpctl install --advanced -v VERSION
This creates a cp-values.yaml file in your current directory with auto-generated passwords and keys.To specify a different output file, use the -o flag:
cpctl install --advanced -v VERSION -o my-values.yaml
2

Edit the values file

Open the generated file and customize it for your environment. The default file name is cp-values.yaml, or the name you specified with -o:
nano cp-values.yaml
Common customizations:
  • External PostgreSQL — provide your database host, port, credentials, and disable the bundled PostgreSQL-HA
  • External Temporal — provide your Temporal server address and disable the bundled Temporal
  • Storage class — set a specific storage class for persistent volumes
  • Resource limits — adjust CPU and memory for Control Panel components
3

Install with the custom values

Run the installer with your edited values file (replace the file name if you used -o):
cpctl install -v VERSION -f cp-values.yaml -s STORAGE_CLASS_NAME
4

Confirm and deploy

The installer shows a summary and asks you to confirm:
==> About to install Control Panel
  Version: v1.4.6
  Namespace: control-panel
  Workload Namespace: control-panel-deployments
  Release: cp
  Timeout: 15m0s

Do you want to proceed? [y/N]: y
Confirm with y to start the deployment.
Generated credentials are saved the same way as with basic installation — see Credentials storage.

Installation options reference

Install flags

OptionDescriptionDefault
-v, --versionChart version (required, format: vX.Y.Z)
-f, --valuesPath to custom values file
-s, --storage-classStorage class for persistent volumesCluster default
--workload-namespaceKubernetes namespace for blockchain node workloads<namespace>-deployments
--set key=valueSet Helm values (repeatable)
--advancedGenerate values template instead of installingfalse
-o, --outputOutput file for --advanced modecp-values.yaml
--backend-urlCP UI backend API URLhttp://<release>-cp-deployments-api
--disable-monitoringSkip monitoring stack installationfalse
--reuse-vm-operatorUse existing VictoriaMetrics operator; skip operator and CRD installationfalse
--chart-registryOCI registry URLPublic CP registry
-y, --yesAuto-approve prompts (non-interactive)false
--dry-runPrint Helm command without executingfalse
--timeoutInstallation timeout15m0s
--poll-intervalStatus polling interval for progress display3s
--config-dirDirectory for credentials storage~/.config/cp-suite
--clear-linesClear lines for progress updates in non-TUI mode (requires TTY)true

Global flags

FlagDescriptionDefault
-n, --namespaceKubernetes namespacecontrol-panel
-r, --releaseHelm release namecp
--kubeconfigPath to kubeconfig file~/.kube/config
--no-colorDisable colored outputfalse
--verboseEnable verbose outputfalse

Next steps

  1. First login — First login and configuration
  2. Deploying nodes — Deploy your first blockchain node
Last modified on April 8, 2026