Skip to content

Installation

Prerequisites

  • Kubernetes cluster (1.24+)
  • Flux CD v2 installed and configured
  • Helm 3.x (for Helm-based installation)
helm install nextcloud-operator ./chart \
  -n nextcloud-operator-system \
  --create-namespace

Via kubectl

# Install CRDs
kubectl apply -f deploy/crd.yaml

# Deploy the operator
kubectl apply -f deploy/operator.yaml

Verify Installation

# Check operator pod is running
kubectl get pods -n nextcloud-operator-system

# Verify CRDs are registered
kubectl get crd | grep k8s.bnerd.com

Expected CRDs:

nextclouds.k8s.bnerd.com
nextcloudinstances.k8s.bnerd.com
nextcloudpools.k8s.bnerd.com
nextcloudprofiles.k8s.bnerd.com
signalingservers.k8s.bnerd.com
recordingservers.k8s.bnerd.com

Optional: Percona PG Operator

If you want to use managed PostgreSQL databases (database.managed: true), install the Percona PG Operator:

helm repo add percona https://percona.github.io/percona-helm-charts/
helm repo update

helm install pgo percona/pg-operator \
  --namespace pgo \
  --create-namespace

See the Managed PostgreSQL guide for details.