You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/k0s-logo.svg"width="32">][k0s]</br>[k0s]| Simple, Solid & Certified Kubernetes Distribution |
27
+
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/k3s_icon.ico"width="26">][k3s]</br>[k3s]| The certified Kubernetes distribution built for IoT & Edge computing |
28
+
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/kind_icon.png"width="32">][KinD]</br>[KinD]| kind is a tool for running local Kubernetes clusters using Docker container “nodes”. kind was primarily designed for testing Kubernetes itself, but may be used for local development or CI. |
29
+
30
+
We tend to test first on k3s first, then the other distros.
| 🐄</br>[Local Path Provisioner]| k3s latest | Default simple local file storage for persistent data |
39
+
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/metallb_icon.png"width="32px"alt="metallb logo, blue arrow pointing up, with small line on one leg of arrow to show balance">][metallb]</br> [metallb]| 0.13.7 | loadbalancer for metal, since we're mostly selfhosting |
40
+
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/nginx.ico"width="32px"alt="nginx logo, white letter N with green background">][nginx-ingress]</br>[nginx-ingress]| 4.4.0 | The ingress controller allows access to the cluster remotely, needed for web traffic |
41
+
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/cert-manager_icon.png"width="32px"alt="cert manager logo">][cert-manager]</br>[cert-manager]| 1.10.1 | For SSL/TLS certificates |
42
+
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/k9s_icon.png"alt="k9s logo, outline of dog with ship wheels for eyes"width="32px">][k9s]</br>[k9s]| latest | Terminal based dashboard for kubernetes |
27
43
28
-
| Application | What is it? |
29
-
|:--------------------|:------------|
30
-
| 🐄 [Local Path Provisioner](https://github.com/rancher/local-path-provisioner)| Default simple local file storage for persistent data |
31
-
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/metallb_icon.png"width="32"alt="metallb logo, blue arrow pointing up, with small line on one leg of arrow to show balance"> metallb](https://github.io/metallb/metallb)| loadbalancer for metal, since we're mostly selfhosting |
32
-
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/nginx.ico"width="32"alt="nginx logo, white letter N with green background"> nginx-ingress](https://github.io/kubernetes/ingress-nginx)| The ingress controller allows access to the cluster remotely, needed for web traffic |
33
-
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/cert-manager_icon.png"width="32"alt="cert manager logo"> cert-manager](https://cert-manager.io/docs/)| For SSL/TLS certificates |
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/eso_icon.png"width="32"alt="ESO logo, outline of robot with astricks in a screen in it's belly">][ESO]</br>[ESO]| 0.6.1 | external-secrets-operator integrates external secret management systems like GitLab|
50
+
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/argo_icon.png"width="32"alt="argo CD logo, an organer squid wearing a fishbowl helmet">][Argo CD]</br>[Argo CD]| 5.16.2 | Gitops - Continuous Deployment |
51
+
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/kyverno_icon.png"width="32"alt="kyvero logo">][Kyverno]</br>[Kyverno]| latest | Kubernetes native policy management to enforce policies on k8s resources |
37
52
38
-
| Application/Tool | What is it? |
39
-
|:-----------------|:------------|
40
-
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/eso_icon.png"width="32"alt="ESO logo, outline of robot iwth astricks in a screen in it's belly"> ESO](https://external-secrets.io/v0.5.9/)| external-secrets-operator integrates external secret management systems like GitLab|
41
-
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/argo_icon.png"width="32"alt="argo CD logo, an organer squid wearing a fishbowl helmet"> Argo CD](https://github.io/argoproj/argo-helm)| Gitops - Continuous Deployment |
42
-
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/kyverno_icon.png"width="32"alt="kyvero logo"> Kyverno](https://github.com/kyverno/kyverno/)| Kubernetes native policy management to enforce policies on k8s resources |
43
-
|[<imgsrc="https://raw.githubusercontent.com/jessebot/smol-k8s-lab/main/docs/icons/k9s_icon.png"alt="k9s logo, outline of dog with ship wheels for eyes"width="32"> k9s](https://k9scli.io/topics/install/)| Terminal based dashboard for kubernetes |
44
53
45
-
If you install argocd, and you use bitwarden, we'll generate an admin password and automatically place it in your vault if you pass in the `-p` option. Curently only works with Bitwarden.
54
+
### Tooling Used for the CLI itself and interface
55
+
smol-k8s-lab is written in Python and built and published using [Poetry]. You can check out the `pyproject.toml` for the versions of each library we install below:
46
56
47
-
Want to get started with argocd? If you've installed it via smol-k8s-lab, then you can jump [here](https://github.com/jessebot/argo-example#argo-via-the-gui). Otherwise, if you want to start from scratch, start [here](https://github.com/jessebot/argo-example#argocd)
57
+
-[rich] (this is what makes all the pretty formatted text)
58
+
-[PyYAML] (to handle the k8s yamls and configs)
59
+
-[bcrypt] (to pass a password to argocd and automatically update your Bitwarden)
60
+
-[click] (handles arguments for the CLI)
48
61
62
+
We also utilize the [Bitwarden cli], for a password manager so you never have to see/know your argocd password.
49
63
50
64
### Port Forwarding
51
65
If you want to access an app outside of port forwarding to test, you'll need to make sure your app's ingress is setup correctly and then you'll need to setup your router to port forward 80->80 and 443->443 for your WAN. then setup DNS for your domain if you want the wider internet to access this remotely.
0 commit comments