The k3d command in the Kubefirst CLI automates the creation of a local Kubernetes cluster using k3d, sets up GitOps repositories (GitHub or GitLab), configures cloud infrastructure via Terraform, and bootstraps essential services like Argo CD, Vault, and Minio.
Prerequisites
- Git Provider Token: You must provide a token for your chosen Git provider via environment variables:
- GitHub:
GITHUB_TOKEN - GitLab:
GITLAB_TOKEN (also requires the --gitlab-group flag).
- Disk Space: A minimum of 10 GB of available disk space is required.
- SSH Configuration: If using GitHub or GitLab, ensure the host is in your
~/.ssh/known_hosts file (e.g., ssh-keyscan github.com >> ~/.ssh/known_hosts).
Key Configuration Options
- Git Provider: Choose between
github or gitlab using the --git-provider flag. - Git Protocol: Specify
https or ssh using the --git-protocol flag. - Cluster Name: Define the cluster name with
--cluster-name. - GitOps Template: Override the default GitOps template using
--gitops-template-url and --gitops-template-branch. - Catalog Apps: Use
--install-catalog-apps to include specific applications from the catalog. - Telemetry: Enable or disable telemetry using
--use-telemetry.