For me, the story starts with the Lima project, I was searching for something similar to WSL2 in macOS and found the Lima project, Lima introduces itself as:
Lima launches Linux virtual machines with automatic file sharing and port forwarding (similar to WSL2), and containerd.
Lima can be considered as a some sort of unofficial “containerd for Mac”.
Lima is insanely fast, with a lot of handy features for developers.
Colima is container runtimes on macOS (and Linux) with a minimal setup based on Lima. Colima introduces its relation with Lima as:
Colima is basically a higher level usage of Lima and utilises Lima to provide Docker, Containerd and/or Kubernetes.
Where did the problem begin?
When I worked as a contractor on a big project based on Microservice architecture that has a lot of services, I had a lot of performance problems when I wanted to run end-to-end tests locally on my powerful laptop (MacBook Pro, Intel Core i9, 64GB RAM). We used these tools to create the required infrastructure and run services locally to run end-to-end tests over the k8s cluster locally: