But this often not necessary, because if you can run a production Kubernetes cluster, you can also run a dev Kubernetes cluster, so no need to run a local Kubernetes distribution.
My workflow typically looks like this:
1. Run app locally during dev without Docker
2. Build and run Docker image locally with Docker compose
3. Deploy to development Kubernetes cluster
4. Deploy to production Kubernetes cluster