My Journey: K8s and Helm

Part 2 of 4 ยท My Software Journey

Mission 1#

During this week, I will discover and learn Kubernetes, and how to deploy a simple application to k8s.

I will build a simple API application with Express and then deploy it to Kubernetes, including a database and Redis cache.

The API will be an Incantogamus app, a simple CRUD application for video games.

Incantogamus is a whimsical and imaginary word created with a mix of Latin and whimsy, inspired by the magical world of Harry Potter. However, in terms of actual meaning, it doesn’t have a specific definition or translation as it’s a made-up term. It’s intended to evoke a sense of enchantment and mystery, fitting for a magical word related to games in the Harry Potter universe.

To Do#

Project: https://github.com/civilcoder55/incantogamus

  • Create a simple API application with Express

    Postman request listing games from the Incantogamus API as JSON

  • Dockerize the application

  • Deploy the application to Kubernetes

    • I deployed the application to a Kubernetes cluster on my local machine using minikube. The cluster looks like this:

      Minikube cluster graph with API, MySQL, and Redis deployments, their services and volumes, and the ingress

    • Created an ingress to expose the application to the outside world, and made a domain point to the minikube node IP address.

      The /etc/hosts file mapping 192.168.49.2 to incantogamus.com

    • The application is accessible at incantogamus.com.

      Insomnia GET request to incantogamus.com/health returning 200 OK

  • Discover and play with Kubernetes features

  • Learning Helm Charts