See Vitepress Complete Guide on my site.
Values must be adjusted for your needs.
image:
repository: # example ghcr.io/<account>/docs
pullPolicy: Always
# Overrides the image tag whose default is the chart appVersion.
tag: ""
Image pull secret is needed to pull image from ghcr.io
To create a docker secret in kubernetes, do this:
Please set your values in:
- DOCKER_REGISTRY_SERVER
- DOCKER_USER
- DOCKER_PASSWORD ( use github classic token here )
- DOCKER_EMAIL
- NAMESPACE
kubectl create secret docker-registry dockerimg \
--docker-server=DOCKER_REGISTRY_SERVER --docker-username=DOCKER_USER \
--docker-password=DOCKER_PASSWORD --docker-email=DOCKER_EMAIL \
-n NAMESPACE
Please set your domain or subdomain.
Cert-Manager is required. See here how to install and create cluster-issuer.
ingress:
enabled: true
className: "nginx"
annotations:
cert-manager.io/cluster-issuer: cert-issuer
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
hosts:
- host: <domain or subdoamin>
paths:
- path: /
pathType: ImplementationSpecific
tls:
- secretName: cert-issuer-secret
hosts:
- <domain or subdoamin>
All other values can remain unchanged.
cd < on your helm chart directory >
helm install <release name> . -f values.yaml -n <namespace>
Example:
helm install docs . -f values.yaml -n docs
kubectl get all -n < your namespace >
NAME READY STATUS RESTARTS AGE
pod/docs-8cf5cd5bd-xzmm5 1/1 Running 0 7m48s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/docs ClusterIP 10.43.136.15 <none> 80/TCP 7m48s
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/docs 1/1 1 1 7m48s
NAME DESIRED CURRENT READY AGE
replicaset.apps/docs-8cf5cd5bd 1 1 1 7m48s
Thats it. Have fun 😃 🥳