Skip to Content
OperationsHelm ChartsWeb Site Chart

miot-web-site Chart

The miot-web-site chart deploys the ModularIoT marketing website - a Next.js application with Flowbite and TailwindCSS.

Installation

helm install miot-web-site microboxlabs/miot-web-site \ --namespace modulariot \ --create-namespace

Parameters

Image Parameters

ParameterDescriptionDefault
image.repositoryImage repositoryghcr.io/microboxlabs/miot-web-site
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 hostnamewww.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 nginx.ingress.kubernetes.io/from-to-www-redirect: "true" hosts: - host: www.modulariot.example.com paths: - path: / pathType: Prefix - host: modulariot.example.com paths: - path: / pathType: Prefix tls: - secretName: website-tls hosts: - www.modulariot.example.com - modulariot.example.com

SEO and Performance

For optimal SEO and performance:

Enable Compression

ingress: annotations: nginx.ingress.kubernetes.io/enable-compression: "true" nginx.ingress.kubernetes.io/compression-types: "application/javascript application/json text/css text/html text/javascript"

Cache Static Assets

ingress: annotations: nginx.ingress.kubernetes.io/configuration-snippet: | location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg|woff|woff2)$ { expires 1y; add_header Cache-Control "public, immutable"; }

WWW Redirect

Redirect non-www to www (or vice versa):

ingress: annotations: nginx.ingress.kubernetes.io/from-to-www-redirect: "true"
Last updated on