Skip to main content
Version: Next
OSSEnterprise

Getting Started

This guide walks you through installing Knodex, verifying the deployment, and deploying your first instance.

Requirements

  • Kubernetes cluster (1.32+)
  • KRO — or let the chart install it (see compatibility matrix below)
  • kubectl configured
  • Helm 3.x

Version Compatibility

Each Knodex release is tested against a specific KRO version. Using a different KRO version may work but is not guaranteed.

KnodexKROKubernetesHelm
0.5.00.9.11.32+3.x

The Helm chart bundles the matching KRO version as an optional dependency. Setting kro.enabled=true installs the correct version automatically.

Install with Helm

helm install knodex oci://ghcr.io/knodex/charts/knodex \
--namespace knodex \
--create-namespace \
--set kro.enabled=true

Omit --set kro.enabled=true if KRO is already installed on your cluster.

Verify Installation

Check that all pods are running:

kubectl get pods -n knodex

Expected output:

NAME READY STATUS RESTARTS AGE
knodex-server-6f8b9c7d4-x2k9m 1/1 Running 0 2m
knodex-redis-59ddd568d9-xxxxx 1/1 Running 0 2m

Verify the server is healthy:

kubectl port-forward svc/knodex-server 8080:8080 -n knodex
curl http://localhost:8080/healthz
# {"status":"healthy"}

Log In

Get the auto-generated admin password:

kubectl get secret knodex-initial-admin-password -n knodex \
-o jsonpath='{.data.password}' | base64 -d && echo

Open http://localhost:8080 and log in with username admin and the retrieved password.

Deploy a Sample RGD

Apply a sample ResourceGraphDefinition:

kubectl apply -f https://raw.githubusercontent.com/knodex/knodex/main/deploy/examples/rgds/simple-app.yaml

Verify it's active:

kubectl get rgd simple-app
NAME STATE AGE
simple-app Active 30s

The simple-app RGD has the knodex.io/catalog: "true" annotation, so it appears in the catalog automatically.

Deploy Your First Instance

  1. Navigate to the Catalog in the sidebar
  2. Select the Simple Application RGD — it accepts appName, image (defaults to nginx:latest), and port (defaults to 80)
  3. Click Deploy, fill in appName (e.g., my-first-app), select a namespace
  4. Review the YAML preview and click Submit

Monitor the instance in the Instances view. Verify with kubectl:

kubectl get simpleapps -A

Upgrading

helm upgrade knodex oci://ghcr.io/knodex/charts/knodex \
--namespace knodex \
-f values.yaml

Uninstalling

helm uninstall knodex --namespace knodex

To also remove the namespace and any persistent data:

kubectl delete namespace knodex
Data Loss

Deleting the namespace removes all data, including Redis state. Ensure you have backups if needed.

Next Steps

TopicDescription
User GuideBrowse the catalog, deploy and manage instances
AdministrationConfigure OIDC, RBAC, and production settings
RGD AuthoringWrite and configure ResourceGraphDefinitions