nixos-config/common/virtualization/kubernetes.nix
2024-12-05 11:56:06 -05:00

24 lines
989 B
Nix

{
config,
pkgs,
lib,
...
}:
{
options = {
kubernetes.enable = lib.mkEnableOption "Enables Kubernetes and tooling";
};
config = lib.mkIf config.kubernetes.enable {
environment.systemPackages = with pkgs; [
argocd # Declarative, GitOps continuous delivery tool for Kubernetes.
k3d # Lightweight utility to run Kubernetes clusters using Docker.
k9s # Kubernetes CLI to visually navigate and manage resources in clusters.
kind # Kubernetes IN Docker: Tool for running local Kubernetes clusters using Docker container nodes.
kubectl # Kubernetes command-line tool for interacting with clusters.
kubectx # Switch between Kubernetes contexts and namespaces with ease.
kubernetes-helm # Package manager for Kubernetes applications, simplifying deployment and management.
minikube # Local Kubernetes cluster for easy testing and development.
stern # Multi-container log tailing and streaming for Kubernetes.
];
};
}