A demo helm chart to deploy a simple web app written in Python
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Drew Bednar 310da309e2 1.6.0 Updates
- Front envvars supplied by .env.production for vite build
- Backend API is now prefixed at /v1/api
- New push-all builds both backend and frontend images
- helm chart adds a postgres database with services and a persistent volume using nfs
3 years ago
api 1.6.0 Updates 3 years ago
app 1.6.0 Updates 3 years ago
charts/demo-helm 1.6.0 Updates 3 years ago
scripts added sync env script and updated deps 3 years ago
.gitignore added sync env script and updated deps 3 years ago
LICENSE Initial commit 3 years ago
Makefile 1.6.0 Updates 3 years ago
README.md 1.6.0 Updates 3 years ago
dev_requirements.in reorganize directory structure, dependency management, and tests 3 years ago
dev_requirements.txt reorganize directory structure, dependency management, and tests 3 years ago

README.md

demo-helm

A demo helm chart to deploy a simple web app written in Python.

Build and push the sample app image

Use the Makefile to build and push the image.

make push-app-image

Helm install/upgrade

New Deployments

helm install <NAME> charts/demo-helm 
OR
helm install charts/demo-helm --generate-name

Upgrading Deployments

Get your deployment ID

helm list 
helm upgrade demo-helm-1633825301 charts/demo-helm

You can wait for successful deployment too.

helm upgrade demo-helm-1633825301 charts/demo-helm --wait

Setting registry pull secrets

You have to have an image pull secret. So first you need the secrets:

From: [The k8s docs]

kubectl create secret docker-registry regcred \
 --docker-server=https://registry.runcible.io \ 
 --docker-username=<your-name> \
 --docker-password=<your-pword> \
 --docker-email=<your-email>

Then you need to specify the secret in your deployment spec like so:

    spec:
      containers:
        - image: registry.runcible.io/demo-helm:1.0.1
          imagePullPolicy: Always
          name: backend
          ports:
            - name: backend
              containerPort: 5000
      imagePullSecrets:
        - name: regcred

Creating the Database password as a secret

kubectl -n <your namespace> create secret generic database_secret \
  --from-literal=password=<your secret>

The k8s docs

References