Skip to Content

miot-docs Chart

The miot-docs chart deploys the ModularIoT documentation site - a Next.js application using Nextra for documentation.

Installation

helm install miot-docs microboxlabs/miot-docs \ --namespace modulariot \ --create-namespace

Parameters

Image Parameters

ParameterDescriptionDefault
image.repositoryImage repositoryghcr.io/microboxlabs/miot-docs
image.tagImage tagChart appVersion
image.pullPolicyPull policyIfNotPresent
imagePullSecretsPull secrets[]

Deployment Parameters

ParameterDescriptionDefault
replicaCountNumber of replicas1
podAnnotationsPod annotations{}
podLabelsPod labels{}
nodeSelectorNode selector{}
tolerationsTolerations[]
affinityAffinity rules{}

Service Parameters

ParameterDescriptionDefault
service.typeService typeClusterIP
service.portService port3000

Ingress Parameters

ParameterDescriptionDefault
ingress.enabledEnable ingressfalse
ingress.classNameIngress class name""
ingress.annotationsIngress annotations{}
ingress.hosts[0].hostDefault hostnamedocs.modulariot.local
ingress.tlsTLS configuration[]

Resource Parameters

ParameterDescriptionDefault
resources.limits.cpuCPU limitNot set
resources.limits.memoryMemory limitNot set
resources.requests.cpuCPU requestNot set
resources.requests.memoryMemory requestNot set

Autoscaling Parameters

ParameterDescriptionDefault
autoscaling.enabledEnable HPAfalse
autoscaling.minReplicasMinimum replicas1
autoscaling.maxReplicasMaximum replicas10
autoscaling.targetCPUUtilizationPercentageTarget CPU80

Environment Variables

Add custom environment variables:

env: - name: NODE_ENV value: "production" - name: NEXT_TELEMETRY_DISABLED value: "1"

Example Values

Development

replicaCount: 1 image: tag: "latest" service: type: NodePort

Production

replicaCount: 2 image: tag: "v1.0.0" resources: limits: cpu: 500m memory: 512Mi requests: cpu: 100m memory: 256Mi ingress: enabled: true className: nginx annotations: cert-manager.io/cluster-issuer: letsencrypt-prod hosts: - host: docs.modulariot.example.com paths: - path: / pathType: Prefix tls: - secretName: docs-tls hosts: - docs.modulariot.example.com

Caching

For better performance in production, consider adding a caching layer:

podAnnotations: nginx.ingress.kubernetes.io/proxy-buffering: "on" nginx.ingress.kubernetes.io/configuration-snippet: | proxy_cache_valid 200 1h;

Search Configuration

The documentation uses Pagefind for client-side search. The search index is built at build time and served statically. No additional configuration is required.

Last updated on