Evolution of application deployment over the past 20 years.
Configure your local and remote lab environments.
Covers the resource types that are included with Kubernetes.
•Pod
•Job
Using helm to manage Kubernetes resources
Example microservice application.
Kubernetes manifests to deploy the demo application.
Explore how custom resources can add functionality
Install additional software to enhance the deployment.
Improving the DevX when working with Kubernetes.
How to safely upgrade your clusters and nodes.
Implement CI/CD for your applications (with GitOps!)
There are many applications used throughout the course that need to be installed in your development environment.
Rather than have you install them all manually, I have provided
Docker Desktop is a set of applications used to develop and run containers.
Please follow the installation instructions on the website based on your system architecture.
Devbox is a tool that leverages the Nix package manager to produce isolated development environments containing the exact set of software tools/versions you need.
Please follow the installation instructions on the website to install on your system.
In the root of the course repo there is a devbox.json
and a devbox.lock
file containing the full set of dependencies (listed below).
After instaling devbox, you can simply run:
devbox shell
and devbox will use Nix package manager to install a copy of all of the required software in an isolated environment.
Note: these applications are installed in such a way that they will NOT impact other versions you may have installed already on your system.
I suggest creating the following aliases:
k=kubectl
t=task
tl='task --list-all'
These will save you many keystrokes! If you want, you can go even further and generate hundreds of kubectl aliases.
Setting up tab completion for your shell of choice makes life much nicer: