Skip to content

Kubernetes configuration for my personal projects

Notifications You must be signed in to change notification settings

alkrauss48/kubernetes

Repository files navigation

My Kubernetes Config

This repo houses my Digital Ocean managed kubernetes configuration for the following projects:

Note

This repo does not include my continuous deployment configuration. That is housed in https://github.com/alkrauss48/fleet-infra, which uses the flux GitOps tool to scan images for updates based on semver tags, and deploy those updated images.

The deployment manifests in this repo will all refer to latest, while the actual live deployments will refer to specific image tags specified in the fleet-infra repo.


Getting Started

Note: This repo is configured to work with Digital Ocean's managed kubernetes. Other implementations may also work, but YMMV.

You will need helm installed. On MacOS, you can do this with:

brew install helm

Next, run:

make init # Adds and installs key helm repos

kubectl apply -f namespaces.yaml # Adds namespaces
kubectl apply -f production_issuer.yaml # Adds LetsEncrypt TLS cert issuer
kubectl apply -f volumes.yaml # Adds PersistentVolumeClaims and PersistentVolumes

# Optional - update volumes' reclaim policies to 'Retain'
make retain pv=$PV_NAME # Run this for each volume

For rolling deployments:

kubectl rollout restart deployment/<deployment> -n <namespace>

Services: 1 (frontend) Includes: Deployment, Service, Ingresses

To Deploy:

kubectl apply -f thecodeboss

Services: 3 (app, db, redis) Includes: Deployments, Services, Ingresses, Secrets, and Volume

To Deploy:

cp simple-slides/secrets.yaml.example simple-slides/secrets.yaml
# Add in your secrets to simple-slides/secrets.yaml

kubectl apply -f simple-slides

Services: 2 (frontend & backend) Includes: Deployments, Services, and Ingresses

To Deploy:

kubectl apply -f labs

Services: 1 (frontend) Includes: Deployment, Service, and Ingress

To Deploy:

kubectl apply -f cyrus-lyrics-web

Services: 1 (app) Includes: Deployment, Service, Ingress, and Secrets

To Deploy:

kubectl apply -f cyrus-lyrics-api

Services: 1 (frontend) Includes: Deployment, Service, and Ingress

To Deploy:

kubectl apply -f lucas-hints-web

Services: 1 (frontend) Includes: Deployment, Service, and Ingress

To Deploy:

kubectl apply -f growler-friday

Services: 1 (frontend) Includes: Deployment, Service, and Ingress

To Deploy:

kubectl apply -f mothercodesbest

Services: 1 (app) Includes: Deployment, Service, Ingress

To Deploy:

kubectl apply -f nicu-calculations

Services: 2 (frontend & backend) Includes: Deployment, Service, and Ingress

To Deploy:

kubectl apply -f websockets

About

Kubernetes configuration for my personal projects

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published