Pre requisites for advanced development
We can build the majority of MVK with just docker and inftools-cn container but if we want to take things further, we can install some or all of the tooling ourselves.
This is an advanced use case but this gives you ultimate control over your environments.
A helper comes with infctl that we can use to run through a check list for us.
Install infctl if you have not done so yet with
curl -L https://codeberg.org/headshed/infctl-cli/raw/branch/main/cmd/install.sh | bashBoth this install script and infctl need to run in a bash shell.
Windows users need to refer to Note for windows users below.
Run pre-flight checks with:
infctl-preflight-checks -C
▶ MVK Preflight Checks ◀
CONFIGURATION MODE
Select a tool environment to configure:
> Docker - Recommended MVK Environment Check for Docker installation
Full Development Environment Check for all required development tools
Google Cloud Compute Environment Check for Google Cloud development toolsAn interactive session will start.
The first option, Docker is the minimum possible for MVK.
Press return and accept this choice with y
a summary will display something like the following if docker is found:
Summary
Check performed: Docker - Recommended MVK EnvironmentSettings saved: Yes
Results: Tools checked: 1 Found: 1 Missing: 0
✓ dockerDocker can be installed in a variety of ways but for most Windows and Mac users docker desktop can be an easy option
For Linux users, docker engine install is more often than not the better option.
Which path you take to install Docker, any of the above will work but if you are interesting in really getting to know Kubernetes, running on Linux is best as this is typically what Kubernetes is run on in production.
Note for windows users
Section titled “Note for windows users”Outside of running inftools-cn container, Linux and Mac already have bash and often git installed as part of a default developer environment, however Windows out of the box may not, so for MVK, we can use Git Bash, so check you have this installed on Windows if not already.
Windows will need jq to be installed by downloading it or installing with winget install jqlang.jq.
Use Git Bash from here on to run infctl commands as they will require for there to be a bash shell to run.
Install Other Pre-Requisites
Section titled “Install Other Pre-Requisites”This section is optional if you do not plan to use Vagrant and Virtualbox for which you will need a full developeer installation. It is still useful to install all the items below. You will get the most out of your experience with Kubernetes if you do.
Run infctl-preflight-checks again but this time choose Full Development Environment
infctl-preflight-checks -C
▶ MVK Preflight Checks ◀
CONFIGURATION MODE
Select a tool environment to configure:
Docker - Recommended MVK Environment Check for Docker installation
> Full Development Environment Check for all required development tools
Google Cloud Compute Environment Check for Google Cloud development toolsIf all tools are installed, we see a summary similar to the following
Summary
Check performed: Full Development EnvironmentSettings saved: Yes
Results: Tools checked: 8 Found: 8 Missing: 0
✓ pwgen ✓ kubectl ✓ k3d ✓ helm ✓ jq ✓ git ✓ docker ✓ vagrantInstall any missing packages then re-run the above to confirm everything is ready.
Installation of extra packages
Section titled “Installation of extra packages”pwgen and jq
Section titled “pwgen and jq”pwgen, jq are typically available in package managers
To install pwgen and jq:
On macOS (using Homebrew):
brew install pwgen jqOn Linux (Debian/Ubuntu):
sudo apt-get updatesudo apt-get install pwgen jqOn Linux (Fedora):
sudo dnf install pwgen jqkubectl
Section titled “kubectl”To download kubectl, visit the official Kubernetes documentation: Install and Set Up kubectl. Follow the instructions for your operating system.
To install k3d go to k3d installation and follow their guide
To install helm got to helm install and follow their guide
vagrant
Section titled “vagrant”To install vagrant, visit the official Vagrant downloads page and choose the installer for your operating system.
Note: Vagrant typically requires a compatible hypervisor to manage virtual machines. The most common option is VirtualBox, which works on Windows, macOS, and Linux. You can download VirtualBox from the official site.
- On Windows, you may also use Hyper-V if available.
- On Linux, KVM is a popular alternative.
For most users, installing VirtualBox alongside Vagrant is the simplest and most widely supported setup.
Example installation on macOS (using Homebrew):
brew install --cask vagrant virtualboxExample installation on Ubuntu/Debian:
sudo apt-get updatesudo apt-get install vagrant virtualboxAfter installation, verify both are available in your $PATH by running:
vagrant --versionVBoxManage --version