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.

79 lines
1.7 KiB
Markdown

# 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](https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/#create-a-secret-by-providing-credentials-on-the-command-line)
# References
- [SQLAlchemy patterns I used to use]: (https://git.runcible.io/androiddrew/molten_exp/src/branch/master/market_look/model.py)