Standard Installation
Full NetBox Enterprise installation with custom values and production settings
Installation Journey Prerequisites → Standard Installation (you are here)
This guide walks through a production-ready NetBox Enterprise installation with a custom values file, TLS, resource configuration, and post-install verification.
1. Log In to the Helm Registry
Authenticate with the registry using your email and license ID:
read -rsp "License ID: " NBE_LICENSE_ID && echo
helm registry login registry.enterprise.netboxlabs.com \
--username your-email@example.com \
--password-stdin <<< "$NBE_LICENSE_ID"
unset NBE_LICENSE_ID2. Create a Namespace
kubectl create namespace netbox3. Configure Superuser (Optional)
By default the operator auto-generates a superuser with the username admin and a random password. To use your own credentials instead, create a secret before installing:
kubectl -n netbox create secret generic netbox-superuser \
--from-literal=username=admin \
--from-literal=email=admin@example.com \
--from-literal=password=<secure-password> \
--from-literal=api_token=<your-api-token>Superuser credentials are only applied during the initial database setup. If you skip this step, you can retrieve the auto-generated password later from the netbox-managed-netbox-superuser secret.
4. Configure TLS (Optional)
To serve NetBox over HTTPS, create a TLS secret:
kubectl -n netbox create secret tls netbox-tls \
--cert=path/to/tls.crt \
--key=path/to/tls.key5. Install CRDs
Install the three Custom Resource Definition charts before the operator:
helm install netbox-enterprise-crds \
oci://registry.enterprise.netboxlabs.com/netbox-enterprise/stable-v2/netbox-enterprise-crds \
--version 2.0.1 \
--namespace netbox
helm install netbox-enterprise-crds-pgo \
oci://registry.enterprise.netboxlabs.com/netbox-enterprise/stable-v2/netbox-enterprise-crds-pgo \
--version 2.0.1 \
--namespace netbox
helm install netbox-enterprise-crds-redis \
oci://registry.enterprise.netboxlabs.com/netbox-enterprise/stable-v2/netbox-enterprise-crds-redis \
--version 2.0.1 \
--namespace netbox6. Install the Operator
helm install netbox-enterprise \
oci://registry.enterprise.netboxlabs.com/netbox-enterprise/stable-v2/netbox-enterprise \
--version 2.0.1 \
--namespace netbox7. Apply Configuration
Apply a NetBoxEnterprise resource manifest. The example manifests use namespace: default, but the manifest must be in the same namespace as your Helm install so that pods can access the image pull secret. Use curl and sed to substitute the namespace in one step:
curl -sL https://netboxlabs.com/docs/files/helm/examples/netbox-managed.yaml \
| sed 's/namespace: default/namespace: netbox/' \
| kubectl apply -f -If you used a different namespace, replace netbox in the sed expression to match.
See the available examples for manifests covering external databases, SSO, object storage, and more - apply the same sed substitution to any of them.
8. Verify the Installation
Check pod status
kubectl -n netbox get podsAll pods should reach Running (or Completed for jobs) within a few minutes.
Check NetBoxEnterprise status
kubectl -n netbox get netboxenterprises -o wideInspect detailed status
kubectl -n netbox describe netboxenterprise netbox-managedLook for the Ready condition with status True:
Conditions:
Type Status Reason
---- ------ ------
Ready True AllComponentsReady
Progressing False ReconcileCompleteGet the superuser password
kubectl -n netbox get secret netbox-managed-netbox-superuser \
-o jsonpath='{.data.password}' | base64 -d