Develop Kubernetes applications locally with ease using KinD (Kubernetes in Docker).
VDK is a Command Line Interface (CLI) tool designed to help developers quickly and securely set up local Kubernetes clusters using KinD. It simplifies the process of creating clusters with varying configurations (versions, node counts) to assist in building and testing applications for platforms like Vega.
Building and testing applications designed for Kubernetes often requires a realistic cluster environment. VDK streamlines the setup of local clusters via KinD, providing:
- Single or multi-node Kubernetes clusters
- Configurable Kubernetes versions
- Local container registry (Zot) for image storage
- TLS-enabled reverse proxy (nginx) for secure access
- GitOps with Flux CD
- Easy cluster lifecycle management
This tool is particularly useful for developers working on the Vega platform, enabling consistent and reproducible development environments.
-
Install Devbox:
curl -fsSL https://get.jetify.com/devbox | bash -
Clone and enter the repository:
git clone https://github.com/ArchetypicalSoftware/VDK.git cd VDK devbox shell -
Initialize the environment:
vega init
This creates the registry, reverse proxy, and a default cluster.
-
Verify cluster access:
kubectl cluster-info --context kind-vdk
-
When done, remove the cluster:
vega remove cluster
If port 443 is already in use, set a different port for the reverse proxy:
export REVERSE_PROXY_HOST_PORT=8443| Topic | Description |
|---|---|
| Getting Started | Installation and setup |
| Creating Clusters | How to create clusters |
| Managing Clusters | Cluster lifecycle management |
| Command Reference | Complete command documentation |
| Troubleshooting | Common issues and solutions |
We welcome contributions! Please read our guides:
This project is licensed under the Apache 2.0 License - see the LICENSE file for details.